Skip to main content

So verwendest du den Java Oder Operator

Kennst du das auch aus deiner Schulzeit?
Du schreibst eine Klassenarbeit in irgendeinem Fach.
Nehmen wir einfach mal an – Mathe.

Jetzt bist gerade fertig mit deiner Arbeit.
Und zu Hause wirst du gefragt: „Und wie lief es?“
Du antwortet:“ Ganz gut. Es wird bestimmt eine Eins oder eine Zwei.“

Drei oder vier Tage später bekommst du die Arbeit zurück.
Es ist eine Eins. Super

Meine Frage an dich:
Hast du Recht behalten?
Stimmte die Aussage: „Ganz gut. Es wird bestimmt eine Eins oder eine Zwei.“

Ja klar stimmte diese.
Du hast eine Eins bekommen.

Wenn die Aussage Eins oder Zwei lautet.
Und du bekommst die Eins.
Dann ist der erste Teil der Aussage: „Es wird eine Eins“ wahr.

Der zweite Teil der Aussage:“ Es wird eine Zwei“ ist für sich genommen falsch.
Schließlich hast du ja eine Eins bekommen.

Aber wenn du beide Aussagen mit einem logischen Oder verknüpfst-
Eins oder Zwei-
Dann ist gesamte Aussage richtig oder wahr, solange nur ein Teil der Aussage wahr ist.

Erweitern wir dies.
Stell dir vor, du hättest geantwortet: „Ganz gut. Es wird bestimmt eine Eins oder eine Zwei oder eine Drei.“
Und wieder bekommst du die Eins.

Na ist die Aussage immer wahr?
Natürlich. Denn solange nur ein Ausdruck wahr ist, ist die Gesamtaussage ebenfalls wahr.

Noch ein anderes Beispiel:
Ganz einfach: „Heute ist Montag oder Dienstag“.

Ich habe keine Ahnung, wann du das liest.
Aber wenn bei dir gerade Montag oder Dienstag ist – dann stimmt meine Aussage.

Okay, – Wie bekommst du dieses Wissen in Java übersetzt?

Java bietet dir einen Datentypen für logische Ausdrücke an.
Und dieser nennt sich boolean.

Und wie du diesen Datentyp mit dem logischen Oder in Java verwendest, dass zeige ich dir jetzt.

So kannst du in Java das logische Oder anwenden.

Ich sagte ja bereits- da gibt es den Datentypen boolean.
Und dieser kann zwei Werte entgegennehmen.

Oder du kannst auch sagen:
„Dieser Datentyp kann genau zwei Zustände haben.“

Dieser Zustand ist entweder wahr oder falsch.
Und in Javasprache übersetzt heißt das – true oder false.

Kommen wir nochmal auf die Klassenarbeit zurück.
Die Aussage lautete:
„Eins oder Zwei oder Drei.“

Jetzt wird es die Eins.
Somit ist der erste Ausdruck wahr und die anderen beiden falsch.

In Java-Boolean-Sprache hieße dies: true | false | false
Das Zeichen für das logische Oder ist dieser gerade Strich zwischen den Wahrheitswerten.

Lass uns das Ganze jetzt mit echten Code darstellen.


public class JavaOder {
	public static void main(String[] args) {
		boolean istEins1 = true; //Aussage richtig
		boolean istEins2 = false;//Aussage falsch
		boolean istEins3 = false;//Aussage auch falsch
		
		System.out.println(istEins1 | istEins2 | istEins3);//Oder Verknüpfung  = true	
	}
}

Probiere es aus und führe dieses Programm einmal selbst aus.
Die Konsolenausgabe ist true.

Lass uns das Ganze einmal anders darstellen.
Und zwar kannst du auch einen Wert für die Note festlegen, welche du erhalten hast.
Diese kannst du dir dann in einer Integer Variablen abspeichern.
int meineNote = 1;

Und eine zweite Boolean-Variable speichert das Ergebnis der Oder Verknüpfung.
boolean istEins = meineNote==1 | meineNote==2 | meineNote==3;

Und auch in diesem Fall ist in der Variable istEins der Wert true gespeichert.


public class JavaOder {
	public static void main(String[] args) {
		int meineNote = 1;
		boolean istEins = meineNote==1 | meineNote==2 | meineNote==3;

		System.out.println(istEins);//true	
	}
}

Du musst dir die Rückgabe der oder-Verknüpfung nicht unbedingt in einer Variable speichern.
Denn auch das funktioniert.


public class JavaOder {
	public static void main(String[] args) {
		int meineNote = 1;
		
		System.out.println(meineNote==1 | meineNote==2 | meineNote==3);//true	
	}
}

Wozu das Ganze?
Diese logischen Verknüpfungen nutzt du in der Java Programmierung für Kontrollstrukturen.

Und wie das geht- das zeige ich dir jetzt.

So kannst du eine Kontrollstruktur mit dem Oder Operator auswerten.

Java Programme sollen, unter Anderem, Daten auswerten, analysieren und auch abfangen.

Am Beispiel:
Eine Passwortabfrage in einem Programm prüft, ob das Passwort korrekt ist.
Erst wenn das Passwort in Ordnung ist, wird ein Login freigegeben.

Oder in einem Computerspiel.
Erst wenn bestimmte Werte erfüllt sind, kann die Spielfigur in ein neues Level aufsteigen.

Und diese Prüfung der Daten auf ihren Wert hin, macht man mit Kontrollstrukturen.

So eine Kontrollstruktur kannst du mit einem if- und else Block umsetzen.

Eine Struktur bei der Passwortabfrage kann man formal so beschreiben.
Wenn der Wert (Passwort) dem hinterlegten Passwort entspricht, dann gebe Login frei.
Ansonsten gebe Login nicht frei.

Okay – so einen if -else Block setzen wir einfach mal um.
Und zwar bei den Schulnoten.

Wenn die Note Eins oder Zwei ist- Dann erscheint die Bildschirmausgabe:
„Super!! Hast du toll gemacht“.
Wenn die Note eine andere ist, erscheint folgende Bildschirmausgabe:
„Könnte besser sein“.

Du brauchst also wieder eine Oder-Verknüpfung.
1 oder zwei.
Oder in Java Code:
meineNote == 1 | meineNote == 2

Das wäre jetzt das Programm:


public class JavaOder {
	public static void main(String[] args) {
		int meineNote = 1;

		if (meineNote == 1 | meineNote == 2) {
			System.out.println("Super!! Hast du toll gemacht");
		} else {
			System.out.println("Könnte besser sein");
		}
	}
}

Was passiert hier?

  • Die Variable „meineNote“ hat den Wert 1.
  • Jetzt wird die Klammer des if-Blockes geprüft.
    Und dort steht als Erstes:
    meineNote == 1
  • Die Note ist tatsächlich 1.
    Deshalb ist dieser Ausdruck wahr oder true.
  • Der zweite Ausdruck:
    meineNote == 2
    Für sich genommen ist dieser Ausdruck falsch bzw. false.
  • Für den Gesamtausdruck steht in der Klammer folgende Wahrheitsformel:
    true | false
  • Und true oder false ergibt true.
  • Wenn die Note 1 oder 2 ist, springt das Programm in den if-Block und führt diesen aus.

Probiere es aus und ändere den Wert von „meineNote“ in 3.


public class JavaOder {
	public static void main(String[] args) {
		int meineNote = 3;

		if (meineNote == 1 | meineNote == 2) {
			System.out.println("Super!! Hast du toll gemacht");
		} else {
			System.out.println("Könnte besser sein");
		}
	}
}

Dann würde das Programm wieder prüfen:

  • meineNote == 1
    Nein-also false
  • Oder:
    meineNote == 2
    Nein- ebenfalls false
  • Der Klammerausdruck würde bei einem Wert von Drei folgende Wahrheitsformel haben:
    False | false
  • Und false oder false ist false.
  • Das Programm springt dann nicht in den if Block, sondern direkt in den else-Block.

Zusammenfassung:

  • In Java kannst du das logische Oder über das | darstellen.
  • Sobald ein Teilausdruck einer Oder-Verknüpfung wahr ist, ist die gesamte Verknüpfung ebenfalls wahr.
  • Mit dem Oder Operator lassen sich nicht nur Wahrheitswerte vergleichen.
  • Du kannst mit diesen auch Zahlen, Variablen, Rückgabewerte von Methoden vergleichen.

Ähnliche Beiträge

Das Instanzieren von Java Klassen verhindern

Java Objekte Instanzieren verhindern

Die Instanzierung von Java Klassen verhindern. Was heißt das? Instanzen sind die Objekte einer Java Klasse. Und Instanzieren oder Instanzierung heißt nichts anderes, als Objekterstellung. Aber was soll das? Oder mal anders gefragt: Wieso sollte man verhindern, dass eine Java Klasse – Objekte erstellen kann? Schließlich sind doch Objekte der Sinn und Zweck jeder objektorientierten […]

Java Übung 17: Char-Zeichen mit For-Schleife

Java Übung Char Zeichen For Schleife

In dieser Java Übung werden wir uns die Zeichen des Character Datentypen näher anschauen. Die einzelnen Zeichen sollen auf der Konsole ausgegeben werden. Und wie? Das ganze sollst du mit einer For Schleife machen. Erstelle deshalb eine Klasse „CharZeichen“. In dieser Klasse implementierst du dann eine Klassenmethode, namens „gibZeichen“. Und im Methodenrumpf durchläuft eine For-Schleife […]

So kannst du mit dem StringTokenizer Java Strings zerlegen oder splitten

Java StringTokenizer Java Strings teilen zerlegen splitten

Java StringTokenizer – was ist das? Bevor ich diese Frage kläre, schiebe ich eine zweite Frage hinterher. Denn im Wort Tokenizer steckt das Wort Token. Also was ist ein Token? Hier die Definition zum Token: Ein Token ist eine bestimmte Aneinanderreihung von Zeichen. Man kann auch sagen, eine lexikalische Einheit. Das kann zum Beispiel eine […]

Java Duales Zahlensystem – Binäre Zahlen in Java umwandeln

Java Dual System

Das duale Zahlensystem hat viele Bezeichnungen. Oft wird auch es Dualsystem oder Binärsystem genannt. Es besteht aber immer aus 2 Zahlen. Man verwendet oft die Zahlen 0 und 1. Es können aber auch sämtliche anderen Zahlenpaare sein. Zum Beispiel 7 und 175 sind für sich genommen, auch ein normales Zahlenpaar und somit ein Dualsystem. Mit […]

Java Übung 19 – Zähle die Kommastellen

Java Übung Kommastellen Zählen

In dieser Java Übung möchte ich, dass du eine Methode zum Zählen von Kommastellen schreibst. Lege dazu eine Klasse „KommaZahl“ an. Diese Klasse enthält die statische Methode „zaehleKommaStellen“, welche eine Kommazahl als übergebenen Parameter erwartet.

So unterstützen dich Java Vererbungstabellen beim Entwurf

Java Vererbungstabellen

Bei der Java Vererbung gibt es zwei Klassenarten bzw. -stufen. Die Superklassen, welche einen allgemeinen Typen darstellen Und die spezielleren Unterklassen, welche die Superklasse um bestimmte Funktionen erweitern. Jetzt ist dieses ganze „Der-erbt-von-dem-Konzept“ mitunter sehr schwierig darzustellen. Zum Beispiel in einem Werkzeugkoffer. In einem Werkzeugkoffer befinden sich sämtliche Werkzeuge, von Säge bis Bohrmaschine. Wie machst […]

So kannst du deine Eclipse Oberfläche anpassen

Eclipse anpassen

In diesem Beitrag möchte ich dir zwei ganz nette Features von Eclipse vorstellen. Es geht um Views und um Perspektiven. Wie du schon weißt, besteht Eclipse aus einer grafischen Oberfläche. Und in dieser Oberfläche stehen dir verschiedene Views zur Verfügung. Was ist so ein View?

So kannst du in den Java Klassen Attribute anlegen

Java Klassen Attribute

Die bisherigen Java Klassen in unserem Einführungsbeispiel besitzen noch keine Attribute. Das ändern wir und legen diese jetzt an. In diesem Beitrag erfährst du: Warum Variablen in deinen Klassen eine entscheidende Rolle spielen. Was es bedeutet eine Variable zu deklarieren. Wo du Attribute in den Java Klassen anlegen darfst und wo nicht. Wie du durch […]

Nutze das Keyword this für deine Java Konstruktoren

Java konstruktoren this

Es ist gemein. Wahrscheinlich hast den Beitrag zu den lokalen Variablen gelesen. Vielleicht hast du auch den Artikeln zum Anlegen und Überladen von Java Konstruktoren gelesen. Und wenn du die beschriebene Inhalte selbst ausprobiert hast…… Dann hast du dir wahrscheinlich sehr viele lokale Variablennamen für die Parameterliste ausdenken müssen.