Dieser Inhalt wurde automatisch aus dem Ukrainischen übersetzt.
In Ruby gibt es zwei logische "und"-Operatoren - && und and. Auf den ersten Blick scheinen sie ähnlich zu sein, haben aber unterschiedliche Ausführungsprioritäten.
&& hat eine hohe Priorität, weshalb es normalerweise für logische Ausdrücke, Bedingungen und Schleifen verwendet wird.
and hat eine niedrige Priorität, weshalb es oft für den Kontrollfluss verwendet wird, wenn mehrere Aktionen nacheinander ausgeführt werden müssen.
Beispiel mit &&:
result = true && false # zuerst wird true && false => false berechnet # result => false
Beispiel mit and:
result = true and false # Ruby liest es als (result = true) and false # zuerst wird die Zuweisung result = true ausgeführt # dann wird das logische und mit false ausgeführt, aber das ändert die Variable result nicht result # => true
Wann und was verwenden?
- Verwende && für Logik und Bedingungen.
- Verwende and für die sequenzielle Ausführung von Aktionen (Kontrollfluss), zum Beispiel return true and log_success. Aber es ist besser, das zu vermeiden. Denn es kann etwas verwirrend werden.
Die Priorität bestimmt die Reihenfolge der Berechnung und nicht das Ergebnis der logischen Operation selbst.
Dieser Beitrag hat noch keine Ergänzungen vom Autor.