Ruby über verschiedene iterative Prozesse

Vorwort

Fassen Sie den iterativen Prozess von Ruby zusammen.

jede Methode (Array / Hash)

Die am häufigsten verwendete iterative Methode in Ruby. Praktisch für Arrays und Hashes.

each.rb


fruits = ["apple", "banana", "grape"]
fruits.each{ |fruit| puts fruit }

Die Elemente der Array-Früchte werden einzeln aus dem jüngsten Index herausgenommen, in das Argument Frucht eingefügt und die Verarbeitung in {} wird ausgeführt. Ich benutze {}, weil es nur eine Zeile verarbeitet,

each_do.rb


numbers = [1, 2, 3, 4, 5]
sum = 0
numbers.each do |number|
  if number % 2 == 0
    sum += number / 2
  else
    sum += number
  end
end
sum #=> 12

Bei mehreren Zeilen erleichtert die Verwendung von do end das Schreiben.

Times-Methode (Anzahl der zu wiederholenden Male)

Praktisch für Prozesse mit einer festen Anzahl von Wiederholungen.

times.rb


sum = 0
10.times { |n| sum += n }
sum #=> 45

Upto / Downto-Methode (numerischer Wert)

Nützlich, wenn die Start- und Endnummern festgelegt sind.

upto.rb


15.upto(20) do |age|
  if age < 18
    puts "#{age}Kein Stimmrecht im Alter"
  else
    puts "#{age}Ich bin über 18 Jahre alt und habe daher das Wahlrecht"
  end
end

bis wiederholt den Vorgang in Richtung Erhöhung des Zahlenwertes. Führt die Verarbeitung von der angegebenen ersten Nummer 15 bis zur letzten Nummer 20 aus.

downto.rb


20.downto(15) do |age|
  if age < 18
    puts "#{age}Kein Stimmrecht im Alter"
  else
    puts "#{age}Ich bin über 18 Jahre alt und habe daher das Wahlrecht"
  end
end

downto wiederholt den Vorgang in Richtung einer Verringerung des Zahlenwerts. Führt die Verarbeitung von der angegebenen ersten Nummer 20 bis zur letzten Nummer 15 aus.

while-Anweisung / till-Anweisung (Endbedingung)

Nützlich, wenn die Endbedingungen festgelegt sind

while.rb


array = (1..100).to_a
sum = 0
i = 0
while sum < 1000
  sum += array[i]
  i += 1
end
sum #=> 1035

Während die Bedingung neben while wahr ist, wird der Vorgang während while-Ende wiederholt. Im obigen Code endet der Prozess, wenn die Gesamtwertsumme 1000 überschreitet.

Die till-Anweisung ist das Gegenteil der while-Anweisung und wiederholt den Vorgang, wenn die Bedingung falsch ist.

until.rb


array = (1..100).to_a
sum = 0
i = 0
until sum >= 1000
  sum += array[i]
  i += 1
end
sum #=> 1035

Der obige Code hat die gleiche Bedeutung wie while.rb.

Schleifenmethode (Endlosschleife)

Sie können eine Endlosschleife mit while true erstellen, aber Sie können sie einfacher mithilfe der Schleifenmethode erstellen.

loop.rb


numbers = [1, 2, 3, 4, 5, 6, 7]
loop do
  n = numbers.sample
  puts n
  break if n == 7
end

Zusammenfassung

Es ist zweckmäßig, die Methode / Syntax zu verwenden, die für die iterative Verarbeitung verwendet wird, die dem Fall entspricht.

Verweise

Eine Einführung in Ruby für diejenigen, die Profis werden wollen Junichi Ito [Autor]

Recommended Posts

Ruby über verschiedene iterative Prozesse
Über Ruby-Symbole
Über Ruby Hash
[Anfänger] Verschiedene iterative Verarbeitung für Ruby-Arrays
Über Ruby-Arrays
Informationen zur Ruby-Vererbung
Über Rubinblock
Über Ruby Hash
Ruby iterativer Prozess
Über Ruby-Symbole
Über Ruby-Methoden
Über Rubys Kernel-Modul
Informationen zu Ruby-Fehlermeldungen
Informationen zur Behandlung von Ruby-Ausnahmen
Über Ruby Hash (Fortsetzung)
Informationen zu Ruby-Instanzmethoden
Über Logik nachdenken Ruby
Verschiedene Ruby-String-Operationen
Erläuterung des Ruby Range-Objekts
Über reguläre Ausdrücke in Ruby
Über Ruby-Hashes und -Symbole
Über Ruby und Objektmodell
Informationen zu Ruby-Klassen und -Instanzen
Erläuterung zum Ruby String-Objekt
Über das Verhalten von Ruby Hash # ==
Ruby-Standardeingabe und verschiedene Methoden
[Swift] Über die iterative Verarbeitung von "for-in-Anweisungen"
Über Ruby einfache Anführungszeichen und doppelte Anführungszeichen
Informationen zum Ruby-Produktoperator (&) und zum Summenoperator (|)
[Super Einführung] Über Symbole in Ruby
Über objektorientierte Vererbung und über Ertrag Ruby
Erklärt Ruby Array-Objekte