Verwendung des Ertrags und die Rückkehr in Ruby
Kann mir jemand helfen, um herauszufinden, die die Verwendung des Ertrags und die Rückkehr in Ruby. Ich bin ein Ruby-Anfänger, also einfache Beispiele, sind sehr geschätzt.
Vielen Dank im Voraus!
InformationsquelleAutor nxhoaf | 2012-05-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die return-Anweisung auf die gleiche Weise funktioniert, dass es funktioniert auf anderen ähnlichen Programmiersprachen, es gibt einfach zurück, das von der Methode genutzt werden.
Sie können überspringen Sie den Anruf zurück zu kehren, da alle Methoden in ruby immer wieder die Letzte Anweisung. So finden Sie vielleicht die Methode, wie diese:
Das ist eigentlich das gleiche wie etwas zu tun wie:
Den
yield
auf der anderen Seite, excecutes den block gegeben, die als parameter der Methode. So können Sie eine Methode wie diese:Und dann verwenden Sie es wie diese:
Dem Ergebnis, dass, wäre Druck auf dem Bildschirm die folgenden 2 Zeilen:
Hoffe das klärt es ein wenig. Für mehr info über die Bausteine, die Sie heraus überprüfen können dieser link.
Hier ist ein guter link
danke @adamscott, ich habe mich verändert die Verknüpfung mit Ihnen. cheers
InformationsquelleAutor Deleteman
yield
wird verwendet, um rufen Sie den block im Zusammenhang mit der Methode. Sie tun dies, indem Sie den block (im Grunde genommen nur code, der in geschweiften Klammern) nach der Methode und deren Parameter, etwa so:return
beendet die aktuelle Methode und der Verwendung von "argument" als Rückgabewert, so:Aber beachten Sie, dass Sie nicht haben Verwendung der return-Schlüsselwort in allen Methoden; Ruby zurück, die Letzte Anweisung ausgewertet, wenn es trifft auf kein zurück. Also diese beiden sind äquivalent:
Hier ist ein Beispiel für
yield
:Beispiel für
return
, die ich verwenden, um eine Methode zu implementieren, um zu sehen, ob eine Zahl glücklich:Hoffe, das hilft! 🙂
ja, kein problem! 🙂
sollte es nicht
def happy?(cache=[])
?Danke, behoben
InformationsquelleAutor Jwosty
Dem yield-Schlüsselwort weist Ruby-code ausführen, in den block. In diesem Beispiel wird der block gibt den string zurück
"yes!"
. Eine explizite return-Anweisung verwendet wurde, in dercool()
Methode, aber dies hätte implizite als auch.InformationsquelleAutor HardSystem