Beruflich Dokumente
Kultur Dokumente
AUSDRCKE
Ausdrcke sind der Grundbaustein von Java. Der Rechner wertet einen Ausdruck aus.
Dabei wird ein Wert mit einem bestimmten Datentypen berechnet.
LITERALE, NUMERALE
UND BEZEICHNER
Zeichenkette (Datentyp String)
1
2
3
4
GanzeInformatik"
Zahl (Datentyp int)
"Grundlagen der
Fliekommazahl (Datentyp double)
420
7.5 Variablenname (Datentyp der Variable)
myVar //Falls vorher als Variable deklariert
Literale (Zeile 1 und 4) und Numerale (Zeile 2 und 3) sind die einfachste Form eines
Ausdrucks.
1) Zeichenkettenliteral: Text, der von Java unverndert verwendet (z.B.
angezeigt) werden soll
2) Ganzzahlnumeral: Ein ganzzahliger Wert
3) Fliekommanumeral: Eine Zahl mit Nachkommastellen
4) Variablenname: Falls eine Variable mit dem Bezeichner existiert, wird der
Ausdruck zu deren Wert und Datentypen ausgewertet
AUSDRCKE
1 public class Literal{
2
public static void main(String[] args){
3
System.out.println("Grundlagen der Informatik");
4
System.out.println(420);
5
System.out.println(7.5);
6
7
int myVar = 23;
8
System.out.println(myVar);
9
}
10 }
>
>
>
>
AUSDRCKE - OPERATIONEN
Mit Operationen knnen Ausdrcke verknpft werden. Einige Beispiele sind...
1 public class BasicOps {
2
public static void main(String[] args){
3
int x;
4
x = 13;
5
Zuweisungsoperation
6
int y;
7
y = x;
arithmetische Operation
8
9
x = x + 29;
10
System.out.println("x = " + x + ", y = " + y);
11
}
Zeichenkettenoperation
12 }
Addition: Lies den Wert der Variablen x (hier 13) und addiere 29
Zuweisung: Schreibe den Wert rechts (hier 13) in die Variable links (hier x )
Verknpfung: Lies den Wert der Variablen y , wandle diesen in eine Zeichenkette
um und verknpfe diese mit der Zeichenkette ", y = " .
OPERATIONEN - ZUWEISUNG
Eine Zuweisung ndert den Inhalt (oder Wert) einer Variablen. ( Kapitel 2)
<Bezeichner> = <Ausdruck>;
Links vom = steht immer der Bezeichner einer Variablen, rechts davon ein Ausdruck,
der zu einem kompatiblen Datentyp ausgewertet wird. Der berechnete/ausgewertete
Wert wird durch die Zuweisung in die Variable auf der linken Seite kopiert.
1 public static void main(String[] args){
2
int x;
3
x = 23;
4
5
int y;
6
y = x;
7
x = 42;
8
9
System.out.println(x + " " + y);
10 }
> 42 23
OPERATIONEN - ARITHMETIK
Operationen knnen ein, zwei oder dreistellig sein. Beispiel zweistellig:
<Ausdruck> <Operator> <Ausdruck>
In Java gibt es die folgenden arithmetischen Operatoren:
Grundrechenarten: Addition ( + ), Subtraktion ( - ), Multiplikation ( * ), Division ( / )
Vorzeichen: + oder Klammern: ( und )
Modulo: % , entspricht dem Rest der Ganzzahligen Division
1
2
3
4
11 % 4
-4
3 * 3
7 / 3
//Rest: 3
//Negatives Vorzeichen: -4
//Produkt: 9
//Ganzzahlige Division: 2
Hinweis: Das Programm speichert keine Ergebnise und zeigt nichts an. Es kann so nicht bersetzt werden.
VERSCHACHTELTE AUSDRCKE
Ausdrcke knnen verkettet und verschachtelt werden.
BEISPIELE
Verschachteln von Variablenzugriff und Multiplikation:
int a = 2;
4 * a
//
4 * 2
//
//
//
//
//
//
((5)
(5 *
(25)
25 %
25 %
25 %
* 5)
5) %
% (4
(4 (4 (2)
//
9 - 5
% (4 - a)
(4 - a)
- a)
a)
2)
25 % 2
PRIORITTEN
Was wird von folgendem verketteten Ausdruck berechnet?
7 * 2 + 3
MGLICHE LESARTEN
(7 * 2) + 3
14 + 3
17
7 * (2 + 3)
7 * 5
35
TESTLAUF
System.out.println(7 * 2 + 3);
> 17
ERGEBNIS
Verkettete Operationen werden nach Prioritten geordnet ausgewertet
(siehe Java Documentation).
OPERATORASSOZIATIVITT
Die Prioritten von * und / sind identisch. Was wird nun berechnet?
10 * 7 / 2
MGLICHE LESARTEN
(10 * 7) / 2
70 / 2
35
10 * (7 / 2)
10 * 3
30
TESTLAUF
System.out.println(10 * 7 / 2);
> 35
ERGEBNIS
Verkettete Ausdrcke gleicher Prioritt werden (in Java) von links nach rechts
ausgewertet. Java ist damit linksassoziativ.
OPERATIONEN - VERGLEICHE
Operationen knnen Werte vergleichen. Das Ergebnis ist ein Wahrheitswert, also true
fr wahr oder false fr falsch ( Kapitel 4).
5 ==
9 !=
15 >
3 <=
5 ==
7
3
8
-9
7 == false
//
//
//
//
//
false
true
true
false
false == false
true
Hinweis: Das Programm speichert keine Ergebnise und zeigt nichts an. Es kann so nicht bersetzt werden.
OPERATIONEN - LOGIK
Wahrheitswerte knnen mit Hilfe von Operatoren verknpft werden.
In Java gibt es die folgenden logischen Operatoren:
Und ( && )
Oder ( || )
Negation ( ! )
BEISPIELE
1
2
3
4
5
6
7
8
//
//
//
//
//
//
//
//
false
true
false
true
true
false
true
false
Hinweis: Das Programm speichert keine Ergebnise und zeigt nichts an. Es kann so nicht bersetzt werden.
SPEZIELLE OPERATOREN
In Java gibt es noch einige spezielle Operatoren
INKREMENT/DEKREMENT
Das Inkrement ++ (Dekrement -- ) erhht (verringert) den Wert einer Variablen um 1.
ZUWEISUNGEN
Verkrzte Zuweisungen (z.B. += , -= , *= , /= , %= , &= , |= ) erlauben es, den Wert einer
Variablen direkt zu verndern.
1
2
3
4
5
6
int a = 5;
a *= 2;
System.out.println(a);
int b = a++ + ++a;
System.out.println("b:" + b + ", a:" + a);
> 10
> b:22, a:12
SANDKASTEN
Schreiben Sie ein Program, das die Summe von 7 und 25 berechnet und in einer
Variablen a speichert. Multiplizieren Sie den Inhalt von a mit 3 und legen Sie den Wert
in einer Variablen z ab.
Legen Sie eine Variable ergebnis an. Wenn der Wert in z gerade ist, soll diese mit dem
Wert 42 initialisiert werden, ansonsten soll sie 2 enthalten (Verwenden Sie nur
Zuweisungen und arithmetische Operationen!).
Geben Sie zuletzt den Inhalt der drei Variablen (durch Leerzeichen getrennt) aus.
public class MeineOperatoren {
public static void main(String[] args){
}
}
KAPITEL 3