Arithmetische Operatoren werden verwendet, um mit Ganzzahlen und Gleitkommazahlen rechnen zu können. Zu ihnen gehören +, -, *, /, %, ++ und --.
Zuweisungsoperatoren werden verwendet, um einer Variablen einen Wert zuzuweisen. Dazu zählen =, +=, -=, *=, /= und %=.
Vergleichsoperatoren werden verwendet, um Variablen oder Werte miteinander vergleichen zu können. Die wichtigsten sind >, <, >=, <=, == und !=.
Logische Operatoren können verwendet werden, wenn bestimmte Bedingungen gelten müssen, bevor eine Aktion ausgeführt wird. Dazu zählen &&, ||, ! und ^.
Arten von Operatoren
Um mit den Variablen arbeiten zu können, gibt es in Java eine Vielzahl an Operatoren. Mit ihnen können beispielsweise Werte der Variablen verändert, ein Ausdruck überprüft und verschiedene Variablen verglichen werden.
Dabei wird zwischen verschiedenen Arten von Operatoren unterschieden:
- Arithmetische Operatoren
- Zuweisungsoperatoren
- Vergleichsoperatoren
- Logische Operatoren
Arithmetische Operatoren
Arithmetische Operatoren werden verwendet, um mit Ganzzahlen und Gleitkommazahlen rechnen zu können. Die wichtigsten Operatoren sind folgende:
Symbol | Name |
---|---|
+ | Addition |
- | Subtraktion |
* | Multiplikation |
/ | Division |
% | Modulo (Rest einer Division) |
++ | Inkrement (addiert 1) |
- - | Dekrement (subtrahiert 1) |
Dabei gilt wie auch in der Mathematik Klammer vor Punkt vor Strich!
Im folgenden Code siehst du einmal alle arithmetischen Operatoren angewandt:
Besuche die App, um alle Inhalte zu sehen!
+ spielt tatsächlich nicht nur bei arithmetischen Operationen eine Rolle, sondern kann bei Strings dazu verwendet werden, diese zu konkatenieren, also aneinander zu hängen. Wenn du beispielsweise eine Variable mit dem Inhalt "Hallo" hast und eine weitere mit "Welt", kannst du sie mithilfe des +-Symbol konkatenieren:
Bei der Divion ist es immer besser auf double oder float zurückzugreifen, da int nur eine Ganzzahl repräsentieren kann und somit alle Kommzahlen zur nächsten Zahl abrundet.
Besuche die App, um alle Inhalte zu sehen!
Schau dir Modulo, Inkrement und Dekrement nochmal etwas genauer an:
Modulo
Modulo gibt dir den Rest einer Division aus. Schau dir folgenden Code an:
Besuche die App, um alle Inhalte zu sehen!
Das Ergebnis dieser Operation lautet 3, da sich die 23 nicht ohne Rest durch 5 teilen lässt. 20 ist die nächst kleinere Zahl, die durch 5 teilbar ist, der Rest ist also 3.
Inkrement
Der Operator Inkrement erhöht eine Zahl um 1. Anstelle also zu schreiben,
Besuche die App, um alle Inhalte zu sehen!
kannst du den Operator ++ verwenden:
Besuche die App, um alle Inhalte zu sehen!
Dekrement
Dekrement funktioniert wie Inkrement, nur dass hier die Zahl um 1 verringert wird:
Besuche die App, um alle Inhalte zu sehen!
Bei Inkrement und Dekrement ist wichtig, ob der Operator vor oder hinter dem Variablennamen steht.
Schau dir folgenden Code an:
Besuche die App, um alle Inhalte zu sehen!
b wird der Wert von a zugewiesen. Da jedoch der Inkrement-Operator vor a steht, wird a zuerst um 1 erhöht, dann wird der Wert von a der Variablen b zugewiesen. a und b haben also nach der dritten Zeile beide den Wert 2.
Schau dir wieder folgenden Code an:
Besuche die App, um alle Inhalte zu sehen!
Da der Operator nun hinter der Variablen steht, wird zuerst b der Wert von a zugewiesen und danach a um 1 erhöht. a hat also nach der dritten Zeile den Wert 2, b jedoch den Wert 1.
Zuweisungsoperatoren
Zuweisungsoperatoren werden verwendet, um einer Variablen einen Wert zuzuweisen.
In Java gibt es folgende wichtige Zuweisungsoperatoren:
= | Einfache Zuweisung der Variable mit einem Wert oder einer anderen Variable |
+= | Addiert einen Wert auf die Variable und weist ihr das Ergebnis zu |
-= | Subtrahiert einen Wert von der Variablen und weist ihr das Ergebnis zu |
/= | Dividiert einen Wert durch die Variable und weist ihr das Ergebnis zu |
*= | Multipliziert einen Wert mit der Variable und weist ihr das Ergebnis zu |
%= | Ermittelt den Modulo der Variable und eines Wertes und weist ihr das Ergebnis zu |
Eine einfache Zuweisung sieht zum Beispiel folgendermaßen aus:
Besuche die App, um alle Inhalte zu sehen!
Beide Variablen haben nun den Wert 5, da in a der Wert 5 gespeichert wurde und daraufhin b dieser Wert zugewiesen wurde.
Dabei muss jedoch immer der Zuweisungswert dem Datentyp entsprechen!
Die Zuweisung kann auch mit den arithmetischen Operatoren verknüpft werden, damit etwas Schreibarbeit eingespart wird:
Besuche die App, um alle Inhalte zu sehen!
Vergleichsoperatoren
Vergleichsoperatoren werden in Java verwendet, um Variablen oder Werte miteinander vergleichen zu können.
In der folgenden Tabelle sind die wichtigsten Vergleichsoperatoren in Java aufgelistet:
> | Größer als |
< | Kleiner als |
>= | Größer gleich |
<= | Kleiner gleich |
== | Gleich |
!= | Ungleich |
Um zu überprüfen, ob eine Variable größer als eine andere ist, wird der > Operator verwendet:
Besuche die App, um alle Inhalte zu sehen!
Das Ergebnis dieses Vergleichs wird in einer Variable vom Typ boolean gespeichert, da der Vergleich entweder wahr oder falsch ist. In diesem Fall ist a größer als b, weswegen die Variable isBigger den Wert true zugewiesen bekommt.
Wenn nun jedoch der < Operator verwendet wird, wird isBigger false zugewiesen:
Besuche die App, um alle Inhalte zu sehen!
Der <=** und **>= Vergleich funktioniert analog:
Besuche die App, um alle Inhalte zu sehen!
Zwei Variablen können auch auf Gleichheit geprüft werden:
Besuche die App, um alle Inhalte zu sehen!
Da a den Wert 10 hat und b den Wert 5, sind sie nicht gleich.
Auch die Ungleichheit kann überprüft werden:
Besuche die App, um alle Inhalte zu sehen!
Logische Operatoren
Logische Operatoren können in Java verwendet werden, wenn bestimmte Bedingungen gelten müssen, bevor eine Aktion ausgeführt wird. Es gibt folgende wichtige Operatoren:
! | Negation (invertiert den Ausdruck) | True: wenn Argument false ist |
False: wenn Argument true ist | ||
&& | Und | True: wenn beide Argumente true sind |
False: wenn einer oder keine der beiden Argumente true sind | ||
|| | Oder | True: wenn mindestens ein Argument der beiden true ist |
False: wenn keiner der beiden Argumente true ist | ||
^ | XOR (entweder oder) | True: Wenn genau eines der beiden Argumente true ist |
False: Wenn keines oder beide Argumente true sind |
Angewendet werden sie folgendermaßen:
Besuche die App, um alle Inhalte zu sehen!
Bei der Negation wird einfach der boolesche Wert einer Variablen umgedreht. Wenn die Variable vorher true gespeichert hat, so ist sie nun false und umgekehrt. Da hier isSunny false ist, wird es durch die Negation zu true. stayDry ist also true.
Besuche die App, um alle Inhalte zu sehen!
Das logische Und wird nur dann zu true ausgewertet, wenn beide Argumente (hier Variablen) true sind. Da hier isRaining und useUmbrella beide true sind, ist auch stayDry true.
In Java gibt es auch das logische Und mit einem &-Zeichen. Dieses wird verwendet, wenn alle Bedingungen in einem if untersucht werden sollen. Besser für die Performance ist jedoch &&.
Besuche die App, um alle Inhalte zu sehen!
Das logische Oder wird dann zu true ausgwertet, wenn mindestens eines der beiden Argumente oder Variablen true sind. Wenn keine der beiden Argumente true sind, wird es zu false ausgewertet. Hier ist !(isRaining) false und useUmbrella true, daher wird der stayDry zu true ausgewertet.
Besuche die App, um alle Inhalte zu sehen!
Beim XOR (entweder oder) wird nur dann true ausgewertet, wenn entweder das eine oder das andere Argument true ist. Wenn beide false oder true sind, dann wird es zu false ausgewertet. Da hier nur isSunny true ist, wird stayDry zu true augewertet.
Probiere dich da einfach aus und setze die booleans auf true oder false und schaue, wann es als true und wann als false ausgewertet wird!
Beispiel
Jan muss entscheiden, wer seiner Freundinnen und Freunde Lust auf einen Campingausflug hat und dafür geeignet ist. Dafür hat er sich folgenden Code geschrieben:
Besuche die App, um alle Inhalte zu sehen!
Joey kommt also nicht mit, da er keine Lust hat.
Da Nicole Lust hat und ein Zelt hat, kann sie mitkommen.
Jeremiah hat Lust und kann kochen. Obwohl er kein Feuer machen kann, ist er trotzdem dabei.
Also kommen insgesamt eine Freundin und ein Freund mit, weswegen die maximale Anzahl an Begleitungen, die mitkommen dürfen, nicht überschritten ist. Der Campingausflug kann also losgehen!