Bei der Vorstellung der Operatoren haben wir bereits Audrücke verwendet. Ein Audruck ist ein Konstrukt
aus Operatoren und Operanden. Die Operanden können dabei Konstanten (Literale), Variable oder auch
Aufrufe von Methoden (Unterprogrammen) sein. Wichtig dabei ist, daß ein Ausdruck immer einen Wert hat.
Dieser Wert ist entweder numerisch oder boolesch (oder der Wert einer Referenz). Wir unterscheiden daher
zunächst zwei Arten von Ausdrücken,
die einen haben einen numerischen Wert als Ergebnis, die anderen true oder false.
- Numerischer Ausdruck : a + 2*(b - c)/b
- Boolescher Ausdruck : 5 <= x && x < 8
Weitere Beispiele :
- x <= 3
- y + 5 < 7*x
- (x - x1)*(x - x2)*(x - x3)
- x*y > 0
- -/b/2/a + Math.sqrt(b*b - 4*a*c)/2
- (-b/2)*a + a/2
- x*y > 0 || x == 0
- Math.rint(1000*x)/1000;
- 2*x != y
- 4*r*r*r*Math.PI/3
Stellen Sie fest, welche der obigen Ausdrücke numerisch sind und welche boolesch. Einige Beispiele
benützen Methoden der Klasse Math. Mit sqrt() berchnet man die Quadratwurzel, mit rint() rundet
man eine Kommazahl auf die am nächsten liegende Ganzzahl (.5 wird aufgerundet).
Es ist wichtig, zwischen Statements und Ausdrücken zu unterscheiden. Im Unterschied zu C kann man
aus einem Ausdruck kein Statement machen, indem man einfach ein Semikolon anhängt. Ein Ausdruck in
Java wird entweder zugewiesen oder steht als Parameter in einem Methodenaufruf oder ist Teil einer
Kontrollstruktur.
Verwendung von Ausdrücken :
- Ausdruck wird zugewiesen : x = ( -b - Math.sqrt(b*b - 4*a*c) )/2/a ;
- Ausdruck ist Parameter einer Methode : Math.rint(1000*x)
- Ausdruck ist Teil einer Kontrollstruktur : if ( 4 < x && x <=5 ) ...