For/in循环
for或for/in循环可对一个枚举对象(比如数组)的元素进行迭代。
for var in collection do
body
end
var是一个变量或一个由逗号分隔的变量列表,collection是一个具有each迭代器方法的对象。
array[1,2,3,4,5]
for element in array
puts element
end
hash={:a=>1,:b=>2,:c=>3}
for key,value in hash
puts "#{key}=>#{value}"
end
注意:
一个for循环的循环变量(或变量组)并不是该循环的局部变量,在对应的循环退出后,它们仍然具有定义。
类似的,在循环体中定义的新变量也能在循环结束后继续存在。
显式依赖
hash ={:a=>1,:b=>2,:c=>3}
hash.each do |key,value|
puts "#{key}=> #{value}"
end
2011-4-19 14:06 danny
for或for/in循环可对一个枚举对象(比如数组)的元素进行迭代。
for var in collection do
body
end
var是一个变量或一个由逗号分隔的变量列表,collection是一个具有each迭代器方法的对象。
array[1,2,3,4,5]
for element in array
puts element
end
hash={:a=>1,:b=>2,:c=>3}
for key,value in hash
puts "#{key}=>#{value}"
end
注意:
一个for循环的循环变量(或变量组)并不是该循环的局部变量,在对应的循环退出后,它们仍然具有定义。
类似的,在循环体中定义的新变量也能在循环结束后继续存在。
显式依赖
hash ={:a=>1,:b=>2,:c=>3}
hash.each do |key,value|
puts "#{key}=> #{value}"
end
2011-4-19 14:06 danny