Rückgabewerte
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy — Lektion 50 von 88.
Bisher haben unsere Methoden Aktionen wie das Ausgeben von Daten ausgeführt. Aber Methoden werden erst richtig mächtig, wenn sie Daten an den Code zurücksenden können, der sie aufgerufen hat. Genau dafür sind Rückgabewerte da.
In Ruby gibt eine Methode automatisch den Wert ihres letzten Ausdrucks zurück:
def add(a, b)
a + b
end
result = add(5, 3)
puts result # Ausgabe: 8Beachten Sie, dass es kein puts innerhalb der Methode gibt. Stattdessen berechnet die Methode a + b und gibt diesen Wert zurück. Wir können ihn dann in einer Variablen speichern oder direkt verwenden.
Du kannst auch das return-Schlüsselwort explizit verwenden:
def multiply(a, b)
return a * b
end
puts multiply(4, 5) # Ausgabe: 20Das Schlüsselwort return beendet die Methode sofort und gibt den angegebenen Wert zurück. Dies ist nützlich, wenn Sie aufgrund einer Bedingung vorzeitig abbrechen möchten. Beide Ansätze funktionieren, aber Ruby-Programmierer verlassen sich oft auf implizite Rückgaben für saubereren Code.
Rückgabewerte ermöglichen es Ihnen, Operationen zu verketten und komplexe Logik aus einfachen Methoden aufzubauen:
def double(n)
n * 2
end
puts double(double(3)) # Ausgabe: 12Aufgabe
EinfachDefinieren Sie eine Methode namens square, die einen Parameter n entgegennimmt und das Quadrat dieser Zahl (die Zahl mit sich selbst multipliziert) zurückgibt.
Lesen Sie zwei Ganzzahlen aus der Eingabe ein. Verwenden Sie die Methode square, um das Quadrat jeder Zahl zu berechnen, und geben Sie dann die Summe beider Quadrate aus.
Wenn die Eingaben zum Beispiel 3 und 4 sind:
- Das Quadrat von 3 ist 9
- Das Quadrat von 4 ist 16
- Die Summe ist 25
Die Ausgabe sollte wie folgt aussehen:
25Wenn die Eingaben 5 und 2 sind, sollte die Ausgabe wie folgt aussehen:
29Spickzettel
Methoden können Werte an den Code zurückgeben, der sie aufgerufen hat. In Ruby gibt eine Methode automatisch den Wert ihres letzten Ausdrucks zurück:
def add(a, b)
a + b
end
result = add(5, 3)
puts result # Ausgabe: 8Sie können auch das Schlüsselwort return explizit verwenden, um die Methode zu verlassen und einen Wert zurückzugeben:
def multiply(a, b)
return a * b
end
puts multiply(4, 5) # Ausgabe: 20Rückgabewerte ermöglichen es Ihnen, Methodenaufrufe zu verketten:
def double(n)
n * 2
end
puts double(double(3)) # Ausgabe: 12Probier es selbst
# Zwei Ganzzahlen von der Eingabe lesen
num1 = gets.chomp.to_i
num2 = gets.chomp.to_i
# TODO: Definiere die square-Methode unten
# TODO: Berechne die Summe der Quadrate mit der square-Methode und gib das Ergebnis ausDiese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 47Rechnungs-Splitter
WillkommensnachrichtBenutzereingaben abfragen10FizzBuzz mit Twist
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array Slicing mit BereichenArray Slicing mit IndizesArray-OperatorenInclude? Methode2Variablen und Datentypen
Zahlen und VariablenDatentyp StringDatentyp BooleanDatentyp SymbolDatentypen prüfenBenennungskonventionenZusammenfassung – Erstellung von Variablen5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachtelte If - Else-AnweisungenUnless-Anweisung8Schleifen
For-Schleife mit RangesWhile-SchleifeBreakNextRückblick - FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick - Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenWiederholung – Einfache MathematikVergleichsoperatoren6Grundlagen Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsChomp-MethodeTypumwandlungWiederholung - AltersrechnerWiederholung - Wahr oder Falsch