2016-05-01 23 views

Antwort

0

In Rubin 1...5 gibt Ihnen einen Bereich, der nicht 5 während 1..5 gibt Ihnen einen Bereich enthält, die 5

zB enthält:

>> (1..5).to_a 
[ 
    [0] 1, 
    [1] 2, 
    [2] 3, 
    [3] 4, 
    [4] 5 
] 
>> (1...5).to_a 
[ 
    [0] 1, 
    [1] 2, 
    [2] 3, 
    [3] 4 
] 
1

Die drei Punkte zeigt an, dass das Ende vor dem Terminator stoppt, zwei Punkte gibt es den Terminator enthält.

SRC: http://strugglingwithruby.blogspot.pt/2008/11/loops.html

1...5 -> 1 zu 4

1..5 -> 1 bis 5

+0

Außerdem gibt es einen großen Unterschied zwischen der Verwendung von zwei Punkten und drei Punkten mit Rubys [Flip-Flop-Operator] (https://blog.newrelic.com/2015/02/24/weird-ruby-part-3-fun Flip-Flop-Phänomen /). :-) –

0

Der Unterschied ist zwischen inklusive und ohne inklusive Bereiche.

d.h .:

(1..5).to_a 
# => [1, 2, 3, 4, 5] 
(1...5).to_a 
# => [1, 2, 3, 4] 

Aus diesem Grund werden Loops eine unterschiedliche Anzahl von Zyklen haben.

Verwandte Themen