SORU
25 EYLÜL 2008, PERŞEMBE


&Quot; ... " Ruby döngü var mı?

Bu kod, kullanıcı programı boş bir dize girene kadar bir dizi (adı her sonra enter tuşuna basın gerekir) onları muhafaza ederken isim girin izin kullanıyorum:

people = []
info = 'a' # must fill variable with something, otherwise loop won't execute

while not info.empty?
    info = gets.chomp
    people  = [Person.new(info)] if not info.empty?
end

Bu kodu döngü sırasında bir şeyi çok iyi bak...:

people = []

do
    info = gets.chomp
    people  = [Person.new(info)] if not info.empty?
while not info.empty?

Bu kod rastgele bir dize info atamak zorunda değilim.

Ne yazık ki bu döngü türü Ruby var gibi görünmüyor. Kimsenin bunu yapmanın daha iyi bir yol önerebilirsiniz?

CEVAP
23 Mayıs 2012, ÇARŞAMBA


DİKKAT:

begin <code> end while <condition> Ruby yazar Matz tarafından reddedildi. Bunun yerine Kernel#loop, örneğin kullanmayı öneriyor

loop do 
  # some code here
  break if <condition>
end 

Daha fazla ayrıntı için başvurun: http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/6745 (or via Wayback), ve bu wiki: http://rosettacode.org/wiki/Loops/Do-while#Ruby

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Breno Rises

    Breno Rises

    7 Ocak 2014
  • sonia989

    sonia989

    26 EKİM 2006
  • Vagrant Records

    Vagrant Reco

    8 Mayıs 2006