Den Unterschied zwischen | entmystifizieren und || (Oder-)Operatoren
Programmierer verwenden häufig das || (Doppelpipe)-Operator für ODER-Ausdrücke in verschiedenen Sprachen wie C# und PHP. Bei einigen kann es jedoch gelegentlich vorkommen, dass ein einzelnes Pipe-Zeichen (|) verwendet wird. Es ist von entscheidender Bedeutung, ihre Unterscheidung zu verstehen.
Kurzschlussverhalten
Genau wie ihre Gegenstücke & und && verhält sich der Doppelrohroperator wie ein Kurzschlussoperator. Es wertet die Bedingungen nacheinander aus und fährt nur dann mit der nächsten fort, wenn die aktuelle falsch ist.
Zum Beispiel prüft der folgende Code die Bedingungen 2 und 3 nur, wenn Bedingung 1 wahr ist:
if (condition1 || condition2 || condition3)
Im Gegensatz dazu kommt es beim Single-Pipe-Operator nicht zu Kurzschlüssen. Es wertet alle Bedingungen unabhängig von den Ergebnissen der vorherigen aus:
if (condition1 | condition2 | condition3)
Dies kann zu Leistungsvorteilen führen, wenn die Zustandsbewertung rechenintensiv ist.
Potenzielle Einschränkungen
Bei der Verwendung des Einzelrohrs sind jedoch Einschränkungen zu beachten Operator:
if (class != null || class.someVar < 20)
Verwenden von || Hier darf keine NullReferenceException wie im || ausgelöst werden Fall, aber es ist immer noch ein wichtiger Gesichtspunkt.
Bitweise Operationen
Über logische Ausdrücke hinaus | und & können auch bitweise Operationen ausführen und so binäre Darstellungen von Zahlen auf Bitebene manipulieren.
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen den Operatoren „|' und „||' (OR) in der Programmierung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!