SORU
15 Ocak 2010, Cuma


Üzerinde yineleme ve Dizi ters&; ruby "" biz bunun bir nedeni var mı?

Geriye yakut Aralığı kullanarak ve her yineleme için çalıştım. Bu şekilde

(4..0).each do |i|
  puts i
end
==> 4..0

0..4'e yineleme sayıları yazar. R = 4..0 ok gibi görünüyor diğer Aralığı, r.ilk == 4, r.== 0 son. Yukarıda inşa etmek bana çok garip görünüyor, beklenen sonuç üretmez. Eğer bunun bir sebebi nedir? Bu davranış makul olduğu durumlar nelerdir?

CEVAP
15 Ocak 2010, Cuma


Sadece bir aralık: bir şeyin içeriği ile başlamak ve sonunda, tanımlanmamış. "Yineleme" içinde bir dizi gerçekten genel bir durumda mantıklı değil. Sana nasıl örnek, "" aralığında iki tarih tarafından üretilen. yineleme için düşünün Yineleme gündüz misin? ay? yıl? hafta? İyi tanımlanmış değil. IMO, ileri aralıkları için izin aslında kullanışlı bir yöntem olarak görülmelidir.

Eğer geriye doğru böyle bir dizi üzerinde yineleme yapmak istiyorsanız, her zaman downto kullanabilirsiniz:

$ r = 10..6
=> 10..6

$ (r.first).downto(r.last).each { |i| puts i }
10
9
8
7
6

Burada zor hem de yineleme izin ve sürekli ters aralıkları ile başa çıkmak için neden başkalarından some more thoughts.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AginoEvolutionHD

    AginoEvoluti

    27 AĞUSTOS 2011
  • Shaollin Animes

    Shaollin Ani

    19 HAZİRAN 2013
  • wafflepwn

    wafflepwn

    14 AĞUSTOS 2008