2013-11-26 21 views
1

我的理解是:如何迭代一系列值?

array = [1,2,3,4,5] 
array.each { |x| puts x } #=> 1,2,3,4,5 

如何得到相同的讀取一個具有包容性的範圍?

當我把:

array = [1...5] 
array.each { |x| puts x } 

我只是得到1...5。我真的很想:1,2,3,4,5

任何想法?

回答

2

1..51...5都是Ruby Range文字的示例。 [1...5]是一個包含一個元素的數組,Range。您可以從一個RangeArray.to_a方法,如(1..5).to_a

周圍的範圍括號是因爲..符號相對較低優先級的重要。

Range值也直接枚舉,像陣列,在(1..5).each {|x| puts x}

+0

唉唉,這闡明它!謝謝您的幫助! – user3007294

0

編碼如下:

(1..5).each { |x| puts x }