`

39、代码块的语法

 
阅读更多
代码块的语法

1.upto(10) {|x| puts x}
1.upto(10) do |x|
  puts x
end
1.upto(10)
{|x| puts x}

代码块的值
一般来说,不应该使用return关键字来从一个代码块中返回。
array.collect do |x|
next 0 if x==nil
next x,x*x
end

不带Next形式
array.collect do |x|
if x==nil
  0
else
[x,x*x]
end
end
2011-4-27 14:54 danny

代码块和变量作用域
代码块定义了一个新的变量作用域:在一个代码块内定义的变量仅存在于该代码块内,在其他之外就没有定义。但是小心,在一个方法内定义的局部变量在该方法的所有代码块中都可见,所以如果一个代码块对一个已经在它外部定义过的变量 进行赋值,就不会创建一个新的块级局部变量 ,而是将新值赋给那个已经存在的局部变量。
tatal=0
data.each{|x| total+=x}
put total
2011-5-29 18:04 danny

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics