Lütfen birisinin 2..-1
ürününün ne anlama geldiğini açıklayabilir.2 ..- 1 aralığı ne anlama geliyor? (Ruby kons about_arrays.rb)
Yakut koans about_arrays.rb aşağıdaki etti: Bölünmüş verir anlayabiliyorum Bundan Gary Wright, string/array slices :
def test_slicing_with_ranges
array = [:peanut, :butter, :and, :jelly]
assert_equal [:peanut, :butter, :and], array[0..2]
assert_equal [:peanut, :butter], array[0...2]
assert_equal [:and, :jelly], array[2..-1]
end
(başka bir yanıt bulunamadı) Aşağıdaki web aralıkları dilimleme ile nasıl çalıştığı Cevap ver. Anlamadığım şey, aralık nesnesinin atıfta bulunduğu WHAT aralığıdır. Normal bir aralığı için, ben yapabilirsiniz: irb çalıştırıldığında şu çıktıyı verir
(1..3).each { |x| puts(x) }
:
1
2
3
=> 1..3e
Ancak (2..-1).each { |x| puts(x) }
verir: aralığını yapar Peki
=> 2..-1
(2..-1)
ne demek?
Teşekkürler @DragoonWraith. Belki de range nesnesini yanlış düşünürüm. Cevabınızdan, 2 (üçüncü madde) ve -1 (son öğe) sonu olan bir aralık. Sanırım kafamı karıştırmak, bunun bölme bağlamı dışında ne anlama geldiği: 2 ve -1 arasında ne sayıdır? Neden (2 ..- 1) .each 'bir şey yazdırmıyor? – Will
@Will: Dizininizde sadece üç öğe var, bu yüzden 2 'ile sonuncusu arasında hiçbir şey yok; '2' * * sonuncusu. Bu yüzden hiçbir şey görmüyorsun. Daha büyük bir dizi ile denerseniz, bir şeyler görmelisiniz. – KRyan
"2 ile -1" arasında "sayı" - Yok. "neden yapmıyor (2 ..- 1). - Bu yüzden ;-) –