Was ist der bitweise Operator in Java? und seine Klassifizierung (mit Beispielen)
Veröffentlicht: 2021-05-20Java ist eine der am weitesten verbreiteten Programmiersprachen in Indien und hat einen Marktanteil von rund 20 Prozent . Ein bitweiser Operator in Java ist ein Symbol/eine Notation, die eine bestimmte Operation an eigenständigen Bits ausführt, die einzeln genommen werden. Es wird verwendet, um einzelne Bits einer Binärzahl zu manipulieren und kann mit einer Vielzahl von Integer-Typen verwendet werden – char, int, long, short, byte.
Ein bitweiser Operator in Java kann grob in 7 Typen eingeteilt werden:
Bitweiser Operator in Java | Symbol | Beschreibung |
Bitweises UND | | | Behält ein Bit im Ergebnis genau dann bei, wenn es in beiden Operanden vorhanden ist. |
Bitweises ODER | & | Behält ein Bit bei, wenn es in einem der beiden Operanden vorhanden ist. |
Bitweises XOR | ^ | Behält etwas bei, wenn es nur in einem Operanden vorhanden ist, aber nicht in beiden. |
Bitweises KOMPLETT | ~ | Auch als 1er-Komplement bekannt. Kehren Sie einfach die Bits des Operanden um. |
Bitweise LINKE UMSCHALTTASTE | << | Die Bits im linken Operanden werden um die im rechten Operanden angegebene Anzahl von Stellen nach links verschoben. |
SIGNIERTE RECHTE VERSCHIEBUNG | >> | Die Bits im linken Operanden werden um die im rechten Operanden angegebene Anzahl von Stellen nach rechts verschoben. |
UNSIGNIERTE RECHTE UMSCHALTUNG | >>> | Genau wie SIGNED RIGHT SHIFT plus verschobene Bits werden mit Null aufgefüllt. |
Lassen Sie uns nun jeden bitweisen Operator in Java im Detail untersuchen:
Inhaltsverzeichnis
1. ODER (A | B)
Wahrheitstabelle
EIN | B | Ausgabe |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Beispiel
A = 1011 1110
B = 0011 0101
Ein | B = 1011 1111
Syntax
Klasse Haupt {
public static void main(String[] args) {
int operand1 = 190, operand2 = 53, Ausgang;
// bitweises ODER zwischen 190 und 53
Ausgang = Operand1 | Operand2;
System.out.println (Ausgabe); // Programm gibt 191 aus
}
}
2. UND (A & B)
Wahrheitstabelle
EIN | B | Ausgabe |
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Beispiel
A = 1011 1110
B = 0011 0101
A & B = 0011 0100
Syntax
Klasse Haupt {
public static void main(String[] args) {
int operand1 = 190, operand2 = 53, Ausgang;
// bitweises ODER zwischen 190 und 53
Ausgang = Operand1 | Operand2;
System.out.println (Ausgabe); // Programm gibt 52 aus
}
}
- INKLUSIV ODER / XOR (A ^ B)
Wahrheitstabelle
EIN | B | Ausgabe |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Beispiel
A = 1011 1110
B = 0011 0101
A ^ B = 1000 0011
Syntax
Klasse Haupt {
public static void main(String[] args) {
int operand1 = 190, operand2 = 53, Ausgang;
// bitweises ODER zwischen 190 und 53
Ausgang = Operand1 | Operand2;
System.out.println (Ausgabe); // Programm gibt 131 aus
}
}
3. ERGÄNZUNG (A ~ B)
Dezimal ausgedrückt ist das bitweise Komplement einer Zahl A – (A+1). Im Binärbereich müssen wir jedoch zuerst das 1er-Komplement berechnen und es dann in das 2er-Komplement umwandeln, um die gewünschte Ausgabe zu erhalten.
1er-Komplement – Einfach die Bits umkehren. Zum Beispiel:
A = 1011 1110 (190)
1er-Komplement von A = 0100 0001
2er-Komplement von A = 1er-Komplement von A + 1 = 0100 0010
Syntax
Klasse Haupt {
public static void main(String[] args) {
int operand4 = 190, Ausgabe;
// bitweises Komplement von 190
Ausgabe = ~ Operand4;
System.out.println (Ausgabe); // gibt -191 aus
}
}
- LINKE UMSCHALTUNG (A << 1)
Angenommen A = 1011 1110
A << 1 = ?
Dieser bitweise Operator in Java bewirkt, dass alle Bits um 1 nach links verschoben werden, dh die Ausgabe ist 0111 1100. Das Bit ganz links (höchstwertiges Bit oder MSB) wird verworfen und eine 0 an die leere Stelle ganz rechts hinzugefügt ( niedrigstwertiges Bit oder LSB). Dies geschieht für jeden freien Platz rechts.
Syntax
Klasse Haupt {
public static void main(String[] args) {
int-Operand = 3; // binär – 11
// 1-Bit-Linksschiebeoperation
int Ausgang= Operand << 1;
System.out.println (Ausgabe); // druckt 2
}
}
4. SIGNIERTE RECHTE UMSCHALTUNG (A >>2)
Dieser bitweise Operator in Java verschiebt das Bitmuster um die angegebene Anzahl von Stellen nach rechts. LSBs werden verworfen und die MSBs werden mit dem Vorzeichenbit gefüllt. 0 steht für ein positives Vorzeichen, während 1 für ein negatives Vorzeichen steht.
Syntax
Klasse Haupt {
public static void main(String[] args) {
int-Operand 1 = 2;
int operand2 = -2;
// 2-Bit-Rechtsverschiebung mit Vorzeichen
System.out.println (operand1 >> 2); // gibt 1 aus
System.out.println (operand2 >> 2); // gibt -1 aus
}
}
5. UNSIGNIERTE RECHTE UMSCHALTUNG (A >>>2)
Die Operation ist hier genau ähnlich wie bei SIGNED RIGHT SHIFT, außer dass die freien Bits ganz links durch 0 anstelle der Vorzeichenbits ersetzt werden.
Syntax
Klasse Haupt {
public static void main(String[] args) {
int-Operand = 240; // Binärzahl – 1111 0000
// 2-Bit-Rechtsverschiebung ohne Vorzeichen
System.out.println (Operand >>> 2); // druckt 60
}
}
Lernen Sie Software-Engineering-Kurse online von den besten Universitäten der Welt. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.
Fazit
Möchten Sie Java beherrschen und Karriere machen? Sehen Sie sich den Software- und Technologie -Track von upGrad an . Melden Sie sich für das 13-monatige Executive PG-Programm in Full-Stack-Entwicklung an und machen Sie sich mit realen Projekten die Hände schmutzig. Als Partner des renommierten IIIT Bangalore haben Sie die Möglichkeit, 16 Programmiersprachen und -tools zu lernen, und 3 Vorstellungsgespräche sind garantiert.
Was sind bitweise Operatoren?
Ein bitweiser Operator bearbeitet jedes Bit der Operanden und gibt ein Ergebnis in Form von 1 und 0 zurück. Die meisten bitweisen Operatoren werden zum Erstellen verschiedener Masken verwendet, die zum Erstellen von Bitfeldern, zum Ändern der Größe eines Datentyps und zum Ausrichten eines Datentyps verwendet werden können. Bitweise Operatoren werden verwendet, um Bit-für-Bit-Operationen an einer Binärzahl durchzuführen. Es wird verwendet, um bei Operationen auf Bitebene effizienter zu sein. Wir können den bitweisen Operator nicht für Variablen von nicht ganzzahligen Datentypen verwenden.
Welche Arten von bitweisen Operatoren gibt es in Java?
In der Java-Sprache werden neben arithmetischen Operatoren auch bitweise Operatoren verwendet. Obwohl es nur wenige bitweise Operatoren gibt, können sie sehr hilfreich sein. In Java gibt es sechs Operatoren. Diese sind: Bitweises UND, Bitweises ODER, Bitweises XOR, Bitweise Linksverschiebung, Bitweise Rechtsverschiebung und Einerkomplement. Diese Operatoren können auf die Integer-Typen byte, short, int, long und char angewendet werden.
Was sind die Funktionen der Programmiersprache Java?
Java ist eine universelle objektorientierte Programmiersprache. Java-Anwendungen werden typischerweise in Bytecode kompiliert, der dann auf der Java Virtual Machine ausgeführt wird. Java wurde entwickelt, um auf einer Vielzahl von Plattformen ausgeführt zu werden. Es ist auch für die Verwendung in einer verteilten Computerumgebung ausgelegt. Ein in der Programmiersprache Java geschriebenes Programm wird als Java-Anwendung oder Java-Anwendungsumgebung bezeichnet. Die Programmiersprache Java ist eine mächtige und flexible Sprache. Java-Anwendungen sind oft größer und komplexer als die durchschnittliche Webanwendung. Die Programmiersprache Java ist eine Allzwecksprache. Es kann verwendet werden, um Anwendungen für jeden Zweck zu erstellen. Features wie Multithreading, Networking, Sicherheit und Persistenz machen Java für eine Vielzahl von Anwendungen geeignet.