Operator: Unterschied zwischen den Versionen
Aus EINI
(→Beispiele) |
(→Beispiele) |
||
Zeile 89: | Zeile 89: | ||
Ausgabe | Ausgabe | ||
c: true d: true | c: true d: true | ||
+ | '''Beispiel 3''' | ||
+ | <source lang="java" > | ||
+ | boolean c; | ||
+ | boolean d; | ||
+ | double a = 5; | ||
+ | double b = a + 3.7; | ||
+ | System.out.ptintln("a: "+ a + "b: " +b); | ||
+ | |||
+ | a++; | ||
+ | b = b/3; | ||
+ | System.out.ptintln("a: "+ a + "b: " +b); | ||
+ | |||
+ | c = (a%2==0); | ||
+ | d = (b%2==0); | ||
+ | |||
+ | System.out.println("a is an even number: "+c + ", b is an even number: "+d); | ||
+ | </source> | ||
+ | |||
+ | Ausgabe | ||
+ | a: 5 b: 8.7 | ||
+ | a: 6 b: 2.9 | ||
+ | a is an even number: true, b is an even number: false | ||
=Priotitäten= | =Priotitäten= |
Version vom 20. Juni 2016, 15:50 Uhr
Ein Operator kann auf Werte angewendet werden, um diese zu kombinieren oder manipulieren. So ist z.B. + ein zweistelliger Operator und addiert zwei numerische Werte miteinander oder konkateniert einen String an einen anderen.
Erlaubte Operatoren
Auf jeden primitiven Datentyp sind in Java unterschiedliche Operatoren erlaubt.
Datentyp | Operator | Funktion |
---|---|---|
boolean | && | UND-Verknüpfung zwischen linkem und rechtem Operanden |
|| | ODER-Verknüpfung zwischen linkem und rechtem Operanden | |
== | Vergleich auf Gleichheit mit einem anderen boolean | |
! | Negation des Operanden rechts vom ! | |
byte, char, short, int, long | + | Addition von linkem mit rechtem Operanden |
- | Subtraktion von linkem mit rechtem Operand | |
* | Multiplikation von linkem mit rechtem Operanden | |
/ | Division von linkem mit rechtem Operanden | |
% | Modulo Operation (Division mit Rest) von linkem mit rechtem Operanden | |
++ | Inkrement der Variablen links vom Operator um 1 | |
-- | Dekrement der Variablen links vom Operator um 1 | |
== | Vergleich des linken und rechten Operanden miteinander auf Gleichheit | |
!= | Vergleich des linken und rechten Operanden miteinander auf Ungleichheit | |
< | Vergleich ob der linke Operand kleiner ist als der rechte Operand | |
> | Vergleich ob der linke Operand größer ist als der rechte Operand | |
<= | Vergleich ob der linke Operand kleiner oder gleich dem rechten Operanden ist | |
>= | Vergleich ob der linke Operand größer oder gleich dem rechten Operanden ist |
Beispiele
Beispiel 1
int a = 5; int b = 7; boolean c = a<2; boolean d = a+b>4 && a==5; boolean e = a-b>4 && a==5; System.out.println("c: "+c+"d: "+d + "e: "+e);
Ausgabe
c: false d: true e: false
Beispiel 2
int a = 7; boolean c = (a>2 && (a-3)!=4)||(a==9 || a>=5); boolean d = a+b>4 && a==5; System.out.println("c: "+c + "d: "+d);
Ausgabe
c: true d: true
Beispiel 3
boolean c; boolean d; double a = 5; double b = a + 3.7; System.out.ptintln("a: "+ a + "b: " +b); a++; b = b/3; System.out.ptintln("a: "+ a + "b: " +b); c = (a%2==0); d = (b%2==0); System.out.println("a is an even number: "+c + ", b is an even number: "+d);
Ausgabe
a: 5 b: 8.7 a: 6 b: 2.9 a is an even number: true, b is an even number: false
Priotitäten
Die Prioritäten von Operatoren bestimmen, in welcher Reihenfolge sie ausgeführt werden. Je kleiner der Rang, desto höher die Priorität der Ausführung. Die Auswertung von geklammerten Ausdrücken hat dabei, wie in mathematischen Formeln, die höchste Priorität.
Operator | Rang | Typ | Beschreibung |
---|---|---|---|
++, -- | 1 | arithmetisch | Inkrement und Dekrement |
+, - | 1 | arithmetisch | unäres Plus |
! | 1 | [ boolean] | logisches Komplement |
(Typ) | 1 | jeder | Cast |
*, /, % | 2 | arithmetisch | multiplikative Operationen ("Punktrechnung") |
+, - | 3 | arithmetisch | additive Operationen ("Strichrechnung") |
+ | 3 | String | String-Konkatenation |
<, <=, >, >= | 5 | arithmetisch | numerische Vergleiche |
==, != | 6 | primitiv | Gleichheit/Ungleichheit von Werten |
& | 7 | [ boolean] | logisches Und |
^ | 8 | [ boolean] | logisches exklusives Oder |
| | 9 | [ boolean] | logisches Oder |
&& | 10 | [ boolean] | logisches konditionales Und |
|| | 11 | [ boolean] | logisches konditionales Oder |
= | 13 | jeder | Zuweisung |
+=, -=, *=, /= | 14 | jeder | Zuweisung mit Operation |