Übung 1 von 6
Deine erste Variable
Eine Variable ist wie eine beschriftete Box. Du gibst ihr einen Namen und packst einen Wert rein.
So sieht das aus:
int alter = 25;
Das bedeutet: Erstelle eine Box namens alter, die eine Ganzzahl (int) speichert, und pack 25 rein.
Die Variable ist schon erstellt. Ändere den Wert von 25 auf 30.
Startcode
void main() {
int alter = 25;
IO.println(alter);
}
Hintergrund
Wie Variablen im Speicher funktionieren
Wenn du int alter = 25; schreibst, reserviert Java im Arbeitsspeicher (RAM) genau 4 Bytes (32 Bit) und speichert dort den Wert 25 als Binärzahl.
Der Name alter ist nur ein Alias — im kompilierten Bytecode existiert der Name nicht mehr, nur noch die Speicheradresse.
int kann Werte von ca. -2,1 Milliarden bis +2,1 Milliarden speichern. Für größere Zahlen: long (8 Bytes).
Übung 2 von 6
Variable für Text
Für Text benutzt du den Typ String (großgeschrieben!):
String name = "Anna";
Ändere den Namen so, dass Max ausgegeben wird.
Startcode
void main() {
String name = "Anna";
IO.println(name);
}
Hintergrund
String vs. int — Referenz vs. Wert
int speichert den Wert direkt. String speichert eine Referenz (Zeiger) auf ein Objekt im sogenannten Heap-Speicher.
Deshalb vergleicht man Strings mit .equals() statt ==: Das == vergleicht nur die Referenz (zeigen beide auf das gleiche Objekt?), nicht den Inhalt.
Übung 3 von 6
Kommazahlen
Für Kommazahlen gibt es double:
double preis = 4.99;
Wichtig: Java benutzt einen Punkt statt Komma — also 4.99, nicht 4,99.
Ändere den Preis auf 9.99.
Startcode
void main() {
double preis = 4.99;
IO.println(preis);
}
Hintergrund
Gleitkommazahlen und ihre Tücken
double nutzt 8 Bytes und speichert Zahlen im IEEE 754 Gleitkommaformat. Das bedeutet: manche Dezimalzahlen können nicht exakt dargestellt werden!
Zum Beispiel: 0.1 + 0.2 ergibt in Java 0.30000000000000004. Für Geldbeträge nutzt man daher BigDecimal.
Übung 4 von 6
Text zusammensetzen
Mit + kannst du Text und Variablen verbinden:
String name = "Java";
IO.println("Hallo " + name);
Ergibt: Hallo Java
Ersetze das ??? so, dass Ich bin 25 Jahre alt ausgegeben wird.
Startcode
void main() {
int alter = 25;
IO.println(???);
}
Hintergrund
String-Konkatenation
Wenn du "Text" + zahl schreibst, wandelt Java die Zahl automatisch in einen String um (String-Konvertierung) und fügt beides zusammen.
Strings sind unveränderlich, deshalb erzeugt jede Verkettung ein neues String-Objekt. In einer Schleife summiert sich das und wird langsam. Profis nutzen dann einen StringBuilder oder für formatierte Ausgaben String.format("Ich bin %d Jahre alt", alter).
Übung 5 von 6
Variable überschreiben
Du kannst den Wert einer Variable jederzeit ändern:
int x = 5;
x = 10; // x ist jetzt 10
Beachte: Beim Ändern schreibst du kein int mehr davor — der Typ steht nur bei der Erstellung.
Setze punkte auf 100, bevor es ausgegeben wird.
Startcode
void main() {
int punkte = 0;
// Setze punkte auf 100
IO.println(punkte);
}
Hintergrund
Deklaration vs. Zuweisung
int x = 5; ist eine Deklaration mit Initialisierung — der Typ wird festgelegt und ein Startwert gesetzt. x = 10; ist eine reine Zuweisung.
Wenn du int x = 10; nochmal schreibst, denkt Java du willst eine neue Variable erstellen — und meckert, weil x schon existiert. Daher: Typ nur einmal angeben!
Übung 6 von 6
Wahr oder falsch
Der Typ boolean kennt nur zwei Werte: true oder false.
boolean istSonnig = true;
boolean regnet = false;
Ändere den Wert so, dass true ausgegeben wird.
Startcode
void main() {
boolean javaIstCool = false;
IO.println(javaIstCool);
}
Hintergrund
Boolean und Logik
boolean belegt in der JVM theoretisch nur 1 Bit, wird aber aus Performance-Gründen meist als ganzes Byte gespeichert.
Boolesche Werte sind die Grundlage für alle Entscheidungen in Programmen. Du kannst sie mit && (UND), || (ODER) und ! (NICHT) kombinieren.
Java nutzt Short-Circuit-Evaluation: Bei a && b wird b gar nicht mehr geprüft, wenn a schon false ist.