私はいくつかのルビーコードを読んでおり、同様の状況で使用されていることを確認0..size
しています。0...size
違いはありますか、それともまったく同じですか?
実際には非常に単純です。..
範囲内の終了値を含め ( 2..5
2,3,4,5 も同様)、それを...
除外します ( 2..5
2,3,4 も同様です)。それ以上のことはありません。
..
(2 つのドット) は、包括的な範囲が必要であることを意味します。...
(3 つのドット) は、範囲が必要であるが、最後の要素が省略されていることを意味します。例:
0..5
戻り値0, 1, 2, 3, 4, 5
0...5
戻り値0, 1, 2, 3, 4
..
包括的Range
を...
作成し、適切な制限が除外されるRangeオブジェクトを作成します。
(0..5).to_a
# => [0, 1, 2, 3, 4, 5]
(0...5).to_a
# => [0, 1, 2, 3, 4]