„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Welchen Zweck hat der Pipe-Gleichheitsoperator (=) in der Programmierung?

Welchen Zweck hat der Pipe-Gleichheitsoperator (=) in der Programmierung?

Veröffentlicht am 07.11.2024
Durchsuche:717

What is the Purpose of the Pipe Equal (=) Operator in Programming?

Was ist der Pipe-Gleich-Operator (=)?

Entwickler, die in Open Source auf den Pipe-Gleich-Operator (|=) gestoßen sind Der Bibliothekscode fragt sich möglicherweise nach seiner Bedeutung. Dieser Operator, der oft mit einer logischen Zuweisung verwechselt wird, enthält eine signifikante bitweise ODER-Operation.

Bitweises ODER verstehen

Der Pipe-Gleichheitsoperator |= funktioniert genauso wie =. Im folgenden Code kombiniert der Operator |= den Originalwert von defaults mit der Konstante DEFAULT_SOUND:

notification.defaults |= Notification.DEFAULT_SOUND;

Dieser Vorgang entspricht:

notification.defaults = notification.defaults | Notification.DEFAULT_SOUND;

wo | bezeichnet den bitweisen ODER-Operator.

Bitweises ODER in Konstantenmasken

Im bereitgestellten Beispiel sind die Konstanten DEFAULT_SOUND, DEFAULT_VIBRATE und DEFAULT_LIGHTS Zweierpotenzen:

DEFAULT_SOUND = 1
DEFAULT_VIBRATE = 2 (1 

Dies ermöglicht die Verwendung von bitweisem ODER zum Hinzufügen oder Entfernen von Flags. Zum Beispiel:

int myFlags = DEFAULT_SOUND | DEFAULT_VIBRATE; // 001 | 010 = 011

Ein weiteres Flag hinzufügen:

myFlags |= DEFAULT_LIGHTS;

hängt einfach ein neues Flag an.

Flag-Präsenz testen

Der bitweise UND-Operator (&) testet das Vorhandensein eines Flags:

boolean hasVibrate = (DEFAULT_VIBRATE & myFlags) != 0;

Wenn das Ergebnis ist ungleich Null, das Flag ist gesetzt.

Freigabeerklärung Dieser Artikel wird reproduziert unter: 1729671437 Wenn ein Verstoß vorliegt, wenden Sie sich bitte an [email protected], um ihn zu löschen.
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3