- 1 Section
- 10 Lessons
- unbegrenzt
- Java Grundlagen10
- 1.1Java-Grundlagen: JDK, JVM, erstes Programm
- 1.2Variablen, Datentypen und Operatoren
- 1.3Kontrollstrukturen: if, else, switch
- 1.4Schleifen: for, while, do-while
- 1.5Arrays und Strings
- 1.6Methoden: Definition, Parameter, Rückgabe
- 1.7Fehlerbehandlung: try-catch-finally, Exceptions
- 1.8Einstieg in Klassen und Objekte
- 1.9Eingabe und Ausgabe: Scanner, System.out
- 1.10Praxisprojekt: Kleines Java-Programm von A bis Z
Variablen, Datentypen und Operatoren
In jedem Programm musst du Daten speichern und damit rechnen: einen Benutzernamen, einen Preis, ein Alter, eine Ja/Nein-Antwort. Dafür gibt es Variablen – benannte Speicherplätze die einen Wert halten. In Java sind Variablen anders als in Python oder JavaScript statisch typisiert: bevor du eine Variable verwendest, musst du dem Compiler sagen welche Art von Daten sie aufnehmen wird. Klingt umständlich, hat aber einen großen Vorteil: viele Fehler werden schon vom Compiler erkannt bevor das Programm überhaupt läuft.
Die einfachste Analogie: Eine Variable ist wie eine beschriftete Schachtel. Der Name steht außen drauf (z.B. „alter"), der Typ sagt dir was rein darf (nur Zahlen, nur Text, nur ja/nein), und der Wert ist was tatsächlich drin liegt. In Java entscheidest du beim Anlegen welche Art Schachtel es ist – und das lässt sich später nicht mehr ändern.
1) Variablen: Schachteln mit Etikett
Jede Variable in Java braucht drei Dinge: einen Typ, einen Namen und (meist) einen Wert. Die Syntax ist immer gleich: Typ name = wert; – das Gleichheitszeichen ist der Zuweisungsoperator (nicht „ist gleich" wie in der Mathematik, sondern „bekommt den Wert"). Klicke eine Variable für Details:
maxScore, userName). Reservierte Wörter (z.B. int, class, if) sind als Variablennamen verboten. Faustregel: sprechende Namen wählen – nicht x, sondern preisInEuro.2) Die Java-Datentypen – primitiv vs. Referenz
Java unterscheidet zwei große Gruppen von Datentypen. Primitive Typen speichern direkt den Wert im Speicher (klein, schnell). Referenztypen (Klassen wie String, oder selbst geschriebene Klassen) speichern einen Verweis auf das eigentliche Objekt. Für den Anfang reicht es zu wissen: die acht primitiven Typen unten plus String sind 95 % dessen was du in den ersten Lektionen brauchst.
final: final double PI = 3.14159;.3) Operatoren: Mit Variablen rechnen und vergleichen
Operatoren sind die Werkzeuge mit denen du mit Variablen arbeitest. Java hat fünf große Gruppen: arithmetische (rechnen), Vergleichs- (vergleichen → liefern boolean), logische (boolean kombinieren), Zuweisungs- (Wert speichern) und Inkrement/Dekrement (um eins erhöhen/verringern). Hier eine Sandbox mit den wichtigsten Beispielen:
= ist Zuweisung („speichere"), == ist Vergleich („sind gleich?"). if (x = 5) ist ein Compiler-Fehler – richtig wäre if (x == 5). Zweite klassische Falle: Integer-Division. 1 / 2 ergibt 0 in Java (nicht 0.5!) weil beide Operanden int sind. Für korrekte Division: einen Operanden als double schreiben (1.0 / 2).4) Type Casting: Werte zwischen Typen umwandeln
Manchmal musst du einen Wert eines Typs in einen anderen Typ umwandeln. Java unterscheidet zwei Fälle: implizit (Java macht es automatisch wenn keine Information verloren geht) und explizit (du musst es selbst sagen weil potentiell Information verloren gehen kann).
Ein int passt problemlos in einen double – aus 42 wird 42.0. Java macht das ohne Nachfrage.
Vom double zum int gehen Nachkommastellen verloren – deshalb verlangt Java dass du das mit (int) ausdrücklich erlaubst. Das ist ein Cast. Aus 3.7 wird 3 (nicht 4 – wird abgeschnitten, nicht gerundet).
String.valueOf(42) macht aus dem int 42 den String "42". Integer.parseInt("42") macht aus dem String "42" den int 42. Double.parseDouble("3.14") entsprechend für Kommazahlen. Diese Umwandlungen brauchst du regelmäßig bei Benutzereingaben – Scanner liefert oft Strings die du in Zahlen umwandeln musst.Zusammenfassung
Variablen = benannte Speicher mit Typ und Wert. Java ist statisch typisiert: Typ wird beim Anlegen festgelegt. Acht primitive Typen: byte, short, int, long (Ganzzahlen), float, double (Kommazahlen), boolean (true/false), char (Zeichen). Plus String als wichtigster Referenztyp. Standards: int, double, String, boolean. Operatoren: arithmetisch (+, -, *, /, %), Vergleich (==, !=, <, >), logisch (&&, ||, !). Klassische Fallen: = vs. ==, Integer-Division (1/2 = 0!). Type Cast mit (int)wert wenn Information verloren gehen kann.
