image-ru-00-14

Eine Frau mit pinkfarbenen Haaren betrat die Kabine. „Ob wohl alle Menschenfrauen solches Haar haben?“ dachte Amigo bei sich.

„Hi! Mein Name ist Ellen Carlsen. Du kannst mich Ellie nennen. Hier im Galaktischen Raser bin ich die Navigatorin.“

„Hi, Ellie“, brachte Amigo hervor.

„Ich werde dir den interessantesten Teil der ganzen Sprache Java erklären: Variablen.“

„Ich höre dir zu. Was sind diese Variablen, von denen du redest?“

Variablen sind spezielle Entitäten, in denen Daten gespeichert werden. Beliebige Daten. In Java werden alle Daten in Variablen gespeichert. Das lässt sich am ehesten mit einer Schachtel vergleichen.“

„Einer Schachtel? Was für eine Schachtel?“

„Irgendeine Schachtel. Nehmen wir an, du schreibst die Zahl 13 auf einen Zettel und legst den in eine Schachtel. Dann können wir sagen, dass die Schachtel den Wert 13 speichert.“

„In Java hat jede Variable drei wichtige Eigenschaften: Typ, Name und Wert.“

„Kannst du mir das näher erklären?“

„Klar. Wir benutzen einen Namen, um eine Variable von einer anderen zu unterscheiden. Das ist wie ein Etikett auf einer Schachtel.

Der Typ einer Variablen bestimmt, welche Arten von Werten/Daten in ihr gespeichert werden können. Einen Hut würden wir in eine Hutschachtel legen, Schuhe in eine Schuhschachtel usw.“

„Der Wert ist das spezielle Objekt, die Daten bzw. Informationen, die in der Variablen gespeichert sind.“

„Kannst du mir mehr über Typen erzählen?“

„Klar. Jedes Objekt in Java hat einen bestimmten Typ. Zum Beispiel ganze Zahl, Bruch, Text, Katze, Haus usw.“

„Eine Variable hat ebenfalls einen Typ. Sie kann nur Werte speichern, deren Typ der gleiche ist wie ihr eigener.“

„Das ist wie im richtigen Leben. Man benutzt verschiedene Typen von Schachteln, um verschiedene Dinge aufzubewahren:“

„Um eine Variable anzulegen (bzw. zu deklarieren), benutzen wir den Namen des Typs: TypName variablenName."

„Hier ein paar Beispiele:“

Eine Variable deklarieren:
zuerst der Typ, dann der Name.
Beschreibung
1
int a;
Eine int-Variable namens a erstellen.
2
String s;
Eine String-Variable namens s erstellen.
3
double c;
Eine double-Variable namens c erstellen.

„Die beiden gängigsten Typen sind ganze Zahlen (Integer-Zahlen, die mit dem Wort int deklariert werden) und Text (der mit dem Wort String deklariert wird).“

„Was bedeutet ‚double‘?“

Doubles sind Brüche oder reelle Zahlen.“

„Du hast gesagt, eine Variable habe drei Eigenschaften: Typ, Name und Wert. Ich sehe aber nur zwei. Deshalb wollte ich fragen, wie kann ich einer Variablen einen Wert zuweisen?“

„Dazu kommen wir wieder auf den Vergleich mit der Schachtel zurück. Stell dir vor, du nimmst einen Zettel, schreibst die Zahl 42 darauf und legst ihn in die Schachtel. Jetzt speichert die Schachtel den Wert 42.“

„Ach so.“

„Wir benutzen eine spezielle Operation (Zuweisung), um Variablen Werte zuzuweisen. Durch die Zuweisung kopiert man Werte von einer Variablen in eine andere. Die Werte werden nicht verschoben. Sondern kopiert. Wie eine Datei auf einer Festplatte. Das sieht dann so aus:“

Code Beschreibung
1
i = 3;
Der Wert 3 wird der Variablen i zugewiesen.
2
a = 1;
b = a+1;
Der Wert 1 wird der Variablen a zugewiesen.
Der Wert 2 wird der Variablen b zugewiesen.
3
x = 3;
x = x + 1;
Der Wert 3 wird der Variablen x zugewiesen.
In der nächsten Zeile wird der Wert von x um 1 erhöht, dadurch ist x also gleich 4.

„Für die Zuweisungsoperation benutzen wir das Gleichheitszeichen (=).“

„Ich wiederhole: Das bedeutet nicht, dass wir einen Vergleich anstellen. Wir kopieren den Wert rechts vom Gleichheitszeichen in die Variable links davon. Für einen Vergleich wird in Java das doppelte Gleichheitszeichen (==) benutzt.“

„Ich weiß, wie man eine Katze in eine Variable stecken kann. Das geht fast wie bei einem Programm.“

„So lockt man eine Katze in die Falle:

1. Eine leere Schachtel nehmen.

2. Warten.“

„Nein, Amigo. Du kriegst nur eine Katze in eine Schachtel. Äh, ich meine, du kannst einer Variablen nur einen Wert zuweisen.

„Ach so. Könntest du mir noch ein paar Beispiele für das Erstellen von Variablen geben?“

„Okay. Also noch einmal: um eine Variable anzulegen (bzw. zu deklarieren), benutzen wir TypName variablenName.“

Code Erläuterung
1
String s;
Eine String-Variable namens s wird erstellt.
In dieser Variablen kann Text gespeichert werden.
2
int x;
Eine int-Variable namens x wird erstellt.
In dieser Variablen können ganze Zahlen (Integers) gespeichert werden.
3
int a, b, c;
int d;
int-Variablen namens a, b, c und d werden erstellt.
In diesen Variablen können ganze Zahlen gespeichert werden.

„Oh, jetzt verstehe ich!“

„Du musst dazu wissen, dass du keine zwei Variablen mit identischen Namen innerhalb der gleichen Methode erstellen kannst.“

„Und in verschiedenen Methoden?“

„Ja, das geht. Das ist so, als ob du Schachteln in verschiedenen Häusern hättest.“

„Kann ich einer Variablen jeden Namen geben, der mir einfällt?“

„Fast. Variablennamen dürfen keine Leerzeichen oder Sonderzeichen wie +, - usw. enthalten. Am besten benutzt man bei einem Variablennamen nur Buchstaben und Ziffern.“

„Denk daran, dass Groß- und Kleinschreibung in Java unterschieden werden. int a ist nicht dasselbe wie Int a.

„Übrigens kannst du in Java eine Variable erstellen und ihr gleichzeitig einen Wert zuweisen. Das spart Zeit und Platz.“

Kompakter Code Äquivalenter, aber längerer Code
1
int a = 5;
int b = 6;
int a;
a = 5;
int b;
b = 6;
2
int c = 7;
int d = c+1;
int c;
c = 7;
int d;
d = c+1;
3
String s = "Ich bin Amigo";
String s;
s = "Ich bin Amigo";

„So ist es viel kompakter und klarer.“

„So ticken wir auch.“

„Es gibt zwei Typen, mit denen sich jeder Java-Anfänger unbedingt vertraut machen muss: int (Ganzzahlen) und String (Text/Zeichenketten).“

„Mit dem Datentyp int kannst du Zahlen in Variablen speichern und Operationen darauf ausführen: Addition, Subtraktion, Multiplikation, Division usw.“

Code Erläuterung
1
int x = 1;
int y = x*2;
int z = 5*y*y + 2*y + 3;
x ist gleich 1
y ist gleich 2
z ist gleich 20+4+3, also 27
2
int a = 5;
int b = 1;
int c = (a-b) * (a+b);
a ist gleich 5
b ist gleich 1
c ist gleich 4*6, also 24
3
int a = 64;
int b = a/8;
int c = b/4;
int d = c*3;
a ist gleich 64
b ist gleich 8
c ist gleich 2
d ist gleich 6

„Alles klar. Ist Programmieren immer so einfach?“

„Eigentlich schon.“

„Fein! Und was kommt als nächstes?“

„Mit dem Typ String kannst du Textzeilen speichern, auch als ‚Strings‘ bzw. Zeichenketten bezeichnet.“

„Um in Java einen String zuzuweisen, musst du den Text in gerade Anführungszeichen setzen. Hier ein paar Beispiele:“

Code Erläuterung
1
String s = "Amigo";
s enthält „Amigo“.
2
String s = "123";
s enthält „123“.
3
String s = "123 + 456";
s enthält „123 + 456“.

„Alles klar. Sieht gar nicht schwer aus.“

„Und noch etwas.“

„Mit einem Pluszeichen (+) kannst du Strings aneinanderhängen. Sieh dir diese Beispiele an.“

Code Erläuterung
1
String s = "Amigo" + " ist der Beste";
s enthält „Amigo ist der Beste“.
2
String s = "";
s enthält einen Leerstring – einen String ohne Zeichen darin.
3
int x = 333;
String s = "Amigo" + x;
s enthält „Amigo333“.

„Man kann also Strings und Zahlen addieren?“

„Ja, das geht, aber wenn du Strings und Zahlen addierst, ist das Ergebnis immer ein String.“

„Das habe ich mir nach dem Beispiel schon gedacht.“

„Wenn du so schlau bist, dann versuch doch mal auszuknobeln, wie man eine Variable auf dem Bildschirm anzeigen lassen kann.“

„Hmmm. Eine Variable? Auf dem Bildschirm? Dazu fällt mir nichts ein.“

„Das ist eigentlich ganz einfach. Um etwas auf dem Bildschirm anzeigen zu lassen, benutzen wir den Befehl System.out.println() und übergeben das, was ausgegeben werden soll, als Parameter.“

Code Bildschirmausgabe
1
System.out.println("Amigo");
Amigo
2
System.out.println("Ami"+"go");
Amigo
3
String s = "Amigo";
System.out.println(s);
Amigo
4
String s = "Am";
System.out.println(s+"igo");
Amigo

„Aha! Jetzt ist das alles viel klarer.“

„Prima. Hier kommen drei weitere Übungen für dich.“

undefined
2
Aufgabe
Java Syntax, Level 0, Lektion 4
Gesperrt
Freundliche Worte an den Lehrer
Die Lehrer im geheimen CodeGym-Zentrum sind allesamt hervorragend. Das merkt man als Schüler gleich von Anfang an (Level 0), aber nur wenige sprechen es auch aus. Doch selbst ein Kätzchen hört gern ein freundliches Wort, oder? Das beste Kompliment, das man einem Programmier-Lehrer machen kann, ist ein Programm. Und wenn dieses Programm dann auch noch den richtigen Satz ausgibt, ist es unbezahlbar! Schreiben wir also ein Programm, das ein Kompliment macht.
undefined
2
Aufgabe
Java Syntax, Level 0, Lektion 4
Gesperrt
Mein junger Freund
Im Jahr 3126 kennt jeder System.out.println() und benutzt es ständig. Nicht nur CodeGym-Schüler, die mit diesem Befehl anfangen, wenn sie programmieren lernen. Sogar Kinder tun es. Schreiben wir ein Programm, das das richtige Geburtsjahr meines Freundes ausgibt. Er wurde vor acht Jahren geboren.
undefined
1
Aufgabe
Java Syntax, Level 0, Lektion 4
Gesperrt
Variablen deklarieren
In Java kannst du eine Variable nicht einfach so benutzen! Niemand würde dich verstehen. Die Compiler würden nichts verstehen und herumnörgeln – du wirst es erleben! Also, wenn du eine Variable benutzen möchtest, musst du deine Absichten öffentlich ankündigen! Schreiben wir ein Programm, in dem int- und String-Variablen deklariert werden.