Ausdrücke:Javakurs: Unterschied zwischen den Versionen

Aus Info-Theke
Zur Navigation springen Zur Suche springen
Zeile 63: Zeile 63:
<pre>
<pre>
column % 2 == 0 ? "blue" : "red";
column % 2 == 0 ? "blue" : "red";
</pre>
== Aufgaben ==
* Gegeben: Dauer in Sekunden: duration gesucht: Stunden hour, Minuten min, Sekunden sec
<pre>int duration = 123483;
int hour = ...;
int min = ....;
int sec = ....;
</pre>
* Gegeben: x Gesucht: liegt x im Intervall [1991, 2009]
<pre>int x = ...;
bool inMarcsYouth = ...;
</pre>
* Gegeben: eine Zahl x. Gesucht: 0 wenn x gleich 0, -1 wenn x negativ, +1 wenn x positiv
<pre>int x = ...;
int sign = ...;
</pre>
</pre>

Version vom 21. September 2014, 17:18 Uhr


Übersicht

Theorie

Ein Ausdruck ist eine Verknüpfung von Operanden mittels Operatoren.

Es gibt 1-, 2- und 3-stellige Operatoren.

1-stellige Operatoren

Operator Bemerkung Beispiele
'-' negiert einen artithmetischen Ausdruck - (a + b)
'!' negiert einen boolschen Ausdruck ! again

2-stellige Operatoren

Operatoren Bemerkung Beispiele
'+' '-' '*' '/' '%' Arithmetik: addieren, subtrahieren, multiplizieren, dividieren, modulo a + b*c - (d % 2)
'==' '!=' Vergleich: gleich, ungleich n == 0 && m != 3
'<' '>' '<=' '>=' Vergleich mit Sortierung: kleiner, größer, kleiner gleich, größer gleich n >= 0 && n < max
'||' '&&' boolsche Arithmetik a || b && c
'|' '&' '^' Bit-Manipulation (b & (c ^ 0xff))

Beachte: Der Operator "gleich" ist '==' (2 mal '='), nicht mit der Zuweisung '=' verwechseln!

3-stelliger Operator

Es gibt genau einen 3-stelligen Operator, den bedingten Ausdruck:

<condition> '?' <true-expression> ':' <false-expression>

Es wird die Bedingung ausgeführt. Liefert diese den Wert true, ist das Ergebnis der erste Ausdruck, sonst der zweite.

Beispiel:

column % 2 == 0 ? "blue" : "red";

Aufgaben

  • Gegeben: Dauer in Sekunden: duration gesucht: Stunden hour, Minuten min, Sekunden sec
int duration = 123483;
int hour = ...;
int min = ....;
int sec = ....;
  • Gegeben: x Gesucht: liegt x im Intervall [1991, 2009]
int x = ...;
bool inMarcsYouth = ...;
  • Gegeben: eine Zahl x. Gesucht: 0 wenn x gleich 0, -1 wenn x negativ, +1 wenn x positiv
int x = ...;
int sign = ...;