Als «short-circuiting» getaggte Fragen

Eine Funktion einiger Sprachen zum Überspringen bestimmter Codes zur Laufzeit, die das Ergebnis nicht beeinflusst, insbesondere beim Testen zusammengesetzter Bedingungen





14
Wird der Kurzschluss der SQL WHERE-Klausel ausgewertet?
Werden boolesche Ausdrücke in SQL WHERE-Klauseln kurzgeschlossen ? Beispielsweise: SELECT * FROM Table t WHERE @key IS NULL OR (@key IS NOT NULL AND @key = t.Key) Wenn @key IS NULL als wahr ausgewertet wird, wird @key NICHT NULL UND @key = t.Key ausgewertet? Wenn nein, warum nicht? Wenn ja, …


9
Gibt es tatsächlich einen Grund, warum && und || überladen sind? nicht kurzschließen?
Der Kurzschlussverhalten der Operatoren &&und ||ist ein wunderbares Werkzeug für Programmierer. Aber warum verlieren sie dieses Verhalten, wenn sie überlastet sind? Ich verstehe, dass Operatoren nur syntaktischer Zucker für Funktionen sind, aber die Operatoren für boolhaben dieses Verhalten. Warum sollte es auf diesen einzelnen Typ beschränkt werden? Gibt es technische …

2
Ternärer Operator in Java wertet seit Java 7 nur einen Ausdruck aus - war das in Java 1.6 und niedriger anders?
Als ich mich auf die Prüfung zum Oracle Certified Associate Java SE 8-Programmierer 1 vorbereitete, stieß ich im offiziellen Studienhandbuch auf den folgenden Absatz über den ternären Ausdruck: Auswertung ternärer Ausdrücke Ab Java 7 wird zur Laufzeit nur einer der rechten Ausdrücke des ternären Operators ausgewertet. In ähnlicher Weise wie …



10
if-Anweisung - Kurzschlussbewertung vs. Lesbarkeit
Manchmal kann eine ifAnweisung ziemlich kompliziert oder lang sein. Aus Gründen der Lesbarkeit ist es daher besser, komplizierte Aufrufe vor dem zu extrahieren if. zB das: if (SomeComplicatedFunctionCall() || OtherComplicatedFunctionCall()) { // do stuff } das mögen bool b1 = SomeComplicatedFunctionCall(); bool b2 = OtherComplicatedFunctionCall(); if (b1 || b2) { …

3
Schließen Sie die Operatoren kurz || und && existieren für nullfähige Boolesche Werte? Der RuntimeBinder glaubt das manchmal
Ich habe die C # -Sprachenspezifikation für die bedingten logischen Operatoren gelesen ||und &&auch als kurzschließende logische Operatoren bezeichnet. Für mich schien es unklar, ob diese für nullfähige Boolesche Werte existieren, dh für den Operandentyp Nullable<bool>(ebenfalls geschrieben bool?), also habe ich es mit nicht dynamischer Typisierung versucht: bool a = …

12
Warum hat Java keine zusammengesetzten Zuweisungsversionen der Bedingungs- und und Bedingungs- oder Operatoren? (&& =, || =)
Also für binäre Operatoren auf booleans, Java hat &, |, ^, &&und ||. Fassen wir hier kurz zusammen, was sie tun: JLS 15.22.2 Boolesche logische Operatoren &, ^ und | JLS 15.23 Bedingter und Betreiber && JLS 15.24 Bedingter oder Operator || Für &ist der Ergebniswert , truewenn beide Operanden …



Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.