Ich verwende diesen Code, damit der Benutzer Namen eingeben kann, während das Programm sie in einem Array speichert, bis er eine leere Zeichenfolge eingibt (er muss nach jedem Namen die Eingabetaste drücken):
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
Dieser Code würde in einer do ... while-Schleife viel besser aussehen:
people = []
do
info = gets.chomp
people += [Person.new(info)] if not info.empty?
while not info.empty?
In diesem Code muss ich keiner zufälligen Zeichenfolge Informationen zuweisen.
Leider scheint diese Art von Schleife in Ruby nicht zu existieren. Kann jemand einen besseren Weg vorschlagen, dies zu tun?
loop do; ...; break if ...; end
?