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

So verwendest du in Java try und catch Blöcke

Java try und catch

Ich bereue lieber die Dinge, die ich getan habe – als die Dinge, welche ich gar nicht erst versucht habe. Ja ich würde mich als den typischen „try-and-error-Menschen“ bezeichnen. Was ich will, probiere ich einfach aus und schaue dann erst was passiert. So etwas wie Pläne kenne ich eigentlich nicht. Und wenn ich mal einen […]

Das Java Leben ist einfacher mit For-Schleife

Java For Schleife Aufbau

In einem anderen Artikeln habe ich bereits über Schleifen in Java gesprochen. In diesem Artikel möchte ich dir eine ganz besondere Schleife vorstellen. Warum ist diese so toll? Sie hat einen integrierten Schleifenzähler. Die Schleife zählt also bei jedem Durchlauf automatisch mit. Aber dazu gleich mehr…. Lass uns einmal so eine For Schleife anlegen.

Java Vererbung findet auch zwischen Einkaufstüten und Polizeiautos statt

Java Vererbung

„Manchmal findet Java Vererbung auch zwischen Einkaufstüten und Polizeiautos statt“ Irrer Titel, oder? Aber mal Hand aufs Herz. Was haben eigentlich eine Einkaufstüte und ein Polizeiwagen gemeinsam? Ich verrate dir etwas: Du kannst die Verbindung nicht erkennen, denn ich habe dir nicht alles verraten. Es fehlt noch ein wichtiger Aspekt – eine Verbindung zwischen beiden. […]

So lassen sich Java Strings in char zerlegen

Java Strings zerlegen char

Java Strings sind Zeichenketten. Und diese Zeichenketten lassen sich aufsplitten und in ihre Einzelteile zerlegen. Ich möchte dir in diesem Beitrag Möglichkeiten vorstellen, wie du Strings in Character-Datentypen zerlegen, extrahieren und die Einzelteile in Arrays speichern kannst.

So kannst du Java Methoden überladen

Java Methoden überladen

Im Mittelalter war es üblich, dass Könige oder Adlige Briefe durch ein Siegel verschlossen. Das Siegel hatte die Aufgabe den Inhalt des Briefes vor dem gewaltsamen Öffnen zu schützen. Außerdem hatte das Siegel die Aufgabe einen Eigentumsnachweis sicher zu stellen. Und jeder, welcher das Siegel des Königs sah, wusste: „Das königliche Siegel – Oh ein […]

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.

Achte bei Java Methoden stets auf die Wertübergabe

Java Methoden Wertübergabe

Ich lege gleich los…. Schau dir diesen Code einmal an. Welche Zahl wird wohl auf der Bildschirmanzeige zurückgegeben? public class MethodenWertUebergabe { static int verdoppele (int i){ i=i*2; return i; } public static void main(String[] args) { int i = 2; verdoppele(i); System.out.println(i); } }

Java For Each Schleife – Aufbau und Funktionsweise

Java for each Schleife

In einer anderen Lektion habe ich dir bereits gezeigt, wie du ein Java Array mit einer for-Schleife füllen und dir später die Werte zurückgeben lassen kannst. Es gibt allerdings einen weiteren Schleifentyp, welche geradezu prädestiniert ist für Java Arrays. Dieser Schleifentyp nennt sich for each Schleife. In diesem Beitrag möchte ich dir zeigen, wie du […]

So kannst du gelöschte Java Projekte oder Dateien in Eclipse wieder herstellen

Wahrscheinlich passiert es jedem einmal, dass man versehentlich Dateien löscht. Und dann? Die Wut ist riesig, weil man ja alles nochmal schreiben muss. In Eclipse hast du die Möglichkeit sämtliche Dateien wieder herzustellen. In diesem Beitrag möchte ich dir demonstrieren, wie du gelöschte Java Klassen, Dateien, Projekte oder Packages wieder herstellen kannst.