# Variablen Variablen sind das Behältnis für Werte in einer Programmiersprache. In Java gibt es zwei Typen von Variablen: * **Primitive Typen** `byte`, `short`, `char`, `int`, `long`, `double`, `float` und `boolean` * **Referenztypen** z.B. `String` --- ## Deklaration und Initialisierung * **Deklaration**: Das "Bekanntmachen" einer Variable. ```java byte a; ``` * **Initialisierung**: Das erstmalige Belegen einer Variable. ```java a = 10; ``` * Man kann auch in einer Zeile gleichzeitig deklarieren und initialisieren. ```java int b = -323; ``` --- ## Identifier Bezeichner für Methoden-, Variablen- und Klassennamen. Ein Identifier muss folgende Eigenschaften erfüllen um in Java gültig zu sein: * Besteht nur aus Buchstaben des Alphabets, Ziffern und `_` und `$` * Ist kein reservierter Identifier (`class`, `public`, `int`, etc.) * Beginnt nicht mit einer Ziffer --- ## Konventionen Regeln um Quelltext lesbarer zu machen. Es gibt einige Absprachen unter Java-Entwicklern wie man z.B. Identifier wählt. Die wichtigsten davon sind: * Methodennamen werden klein geschrieben. * Variablennamen werden klein geschrieben. * Klassennamen werden groß geschrieben. --- ## Literale Die kleinste Einheit für Werte im Quelltext. Literale wurden für alle **primitiven** Datentypen und für `String` festgelegt: * `byte`, `short`, `int`: `5235`, `134`, `-2` * `boolean`: `true`, `false` * `double`: `234234.34`, `-34.1`, `0.0` * `float`: `31.3f`, `60f` * `long`: `23424234234L`, `98745938l` * `char`: `'a'`, `'4'` * `String`: `"Hallo welt"` --- ## Ausdrücke und Zuweisungen **Ausdrücke** Berechnungen oder Methodenaufrufe die einen Wert zurückgeben. **Zusweisungen** Ergebnis eines Ausdrucks wird einer Variable zugewiesen. ```java String greeting = "Hallo" + "Welt"; boolean empty = greeting.isEmpty(); int result = 23 * 3; ``` --- ## **Aufgaben** Welcher Datentyp ergibt Sinn für: * Eine Hausnummer * Eine Adresse * Einen Buchstaben aus dem Alphabet * Den Zustand einer Tür (offen oder geschlossen) * Sekunden seit 980 n.C. * Anzahl Finger pro Hand * Temperatur * Drehwinkel --- Welche der folgenden Identifier sind in Java gültig? * _variablename * exa+ple * 8example * _3variable * $testvariable * VariableTest * variable test * variabletest