„Ich möchte dir zeigen, wie man Variablen in Java vergleichen kann.

„Du kennst bereits die einfachsten Vergleichsoperatoren – kleiner als (<) und größer als (>).“

„Ja.“

„Es gibt auch Operatoren wie gleich (==) und ungleich (!=). Außerdem kleiner als oder gleich (<=) und größer als oder gleich (>=).“

„Jetzt wird die Sache interessant.“

„Beachte, dass es die Operatoren =< oder => in Java nicht gibt!“

„Das Zeichen = wird für Zuweisungsoperationen verwendet. Deshalb werden zwei Gleichheitszeichen (==) verwendet, um die Gleichheit zu prüfen. Um zu überprüfen, ob Variablen nicht gleich sind, verwende den Operator !=.“

„Ach so.“

„Wenn wir zwei Variablen in Java mit dem ==-Operator vergleichen, vergleichen wir den Inhalt der Variablen.“

„Also werden bei primitiven Variablen deren Werte verglichen.“

„Bei Referenzvariablen werden die Referenzen verglichen. Angenommen, wir haben identische, aber eigenständige Objekte. Weil Referenzen auf sie unterschiedlich sind, zeigt ein Vergleich der beiden an, dass sie nicht gleich sind, d.h. das Ergebnis des Vergleichs lautet false. Ein Vergleich von Referenzen ist nur dann true, wenn beide Referenzen auf das gleiche Objekt verweisen.

„Zum Vergleichen der internen Inhalte von Objekten verwenden wir die spezielle Methode equals. Diese Methode (und alle Methoden der Objektklasse) werden vom Compiler zu deiner Klasse hinzugefügt, auch wenn du sie nicht deklarierst. Ich will dir einige Beispiele zeigen:“

Code Erläuterung
1
int a = 5;
int b = 5;
System.out.println(a == b);
Vergleiche primitive Typen.
true wird auf dem Bildschirm angezeigt.
2
Cat cat1 = new Cat("Oscar");
Cat cat2 = cat1;
System.out.println(cat1 == cat2);
Vergleiche Referenzen.
true wird auf dem Bildschirm angezeigt.
Beide Variablen enthalten Referenzen auf das gleiche Objekt.
3
String s = new String("Mom");
String s2 = s;
System.out.println(s == s2);
Vergleiche Referenzen.
true wird auf dem Bildschirm angezeigt.
Beide Variablen enthalten Referenzen auf das gleiche Objekt.
4
Cat cat1 = new Cat("Oscar");
Cat cat2 = new Cat("Oscar");
System.out.println(cat1 == cat2);
Vergleiche Referenzen.
false wird auf dem Bildschirm angezeigt.
Die beiden Variablen referenzieren identische Katze-Objekte, aber nicht das gleiche.
5
String s = new String("Mom");
String s2 = new String("Mom");
System.out.println(s == s2);
Vergleiche Referenzen.
false wird auf dem Bildschirm angezeigt.
Die beiden Variablen referenzieren identische String-Objekte, aber nicht das gleiche.
6
String s = new String("Mom");
String s2 = new String("Mom");
System.out.println(s.equals(s2));
Vergleiche Objekte.
true wird auf dem Bildschirm angezeigt.
Die beiden Variablen referenzieren identische Katze-Objekte.

„Oh, das hätte ich fast vergessen! Hier sind ein paar Übungen für dich:“

4
Aufgabe
Java Syntax,  Level 4Lektion 6
Gesperrt
Mindestens zwei Zahlen
Alle Such- und Sortieralgorithmen basieren auf Vergleichen. Schon bald wirst du bestens damit umgehen können, wenn du möchtest. Doch bis es so weit ist, sollten wir mit etwas Kleinerem anfangen: Schreibe ein Programm, um die kleinere von zwei Zahlen zu finden. Finde sie und zeige sie dann an. Wenn die Zahlen gleich sind, zeige eine der beiden an.
4
Aufgabe
Java Syntax,  Level 4Lektion 6
Gesperrt
Die größte von vier Zahlen
Das Finden der größten Zahl ist eine n-äre Operation (eine Operation mit n Zahlen), die die größte von mehreren Zahlen zurückgibt. Egal. Solche Definitionen brauchen wir im geheimen CodeGym-Zentrum nicht. Wir sind hier, um zu lernen, wie man Code schreibt. In dieser Aufgabe musst du über die Tastatur vier Zahlen eingeben. Ermittle dann die größte von ihnen und zeige sie auf dem Bildschirm an.
8
Aufgabe
Java Syntax,  Level 4Lektion 6
Gesperrt
Drei Zahlen sortieren
Der Planet Linear Chaos ist von Isomorphen bevölkert. Es wird angenommen, dass sie die Sortieralgorithmen erfunden haben. Alles in ihren Köpfen ist außerordentlich gut geordnet. Sie stellen nur Planetenvisa für Personen aus, die mindestens 7 Sortieralgorithmen kennen. Unternehmen wir den ersten Schritt in Richtung Linear Chaos: Lies drei Zahlen von der Tastatur, sortiere sie in absteigender Reihenfolge und zeige sie dann auf dem Bildschirm an.
4
Aufgabe
Java Syntax,  Level 4Lektion 6
Gesperrt
Jen oder Jen?
Jen, die Administratorin von Firma X, lernte, wie man ein Raumschiff steuert und flog zu einem anderen Planeten. Die Mitarbeiter in Firma X sind gut und aufrichtig. Das Problem ist nur, dass sie etwas schusselig sind und Namen häufig durcheinander bringen. Also beschlossen sie, dass die neue Administratorin auch Jen heißen würde. Lass uns der Firma X helfen, ihre Jen zu finden: Schreibe ein Programm, das die Identität von zwei eingegebenen Namen überprüft.
2
Aufgabe
Java Syntax,  Level 4Lektion 6
Gesperrt
18+
Würde irgendein Kind eine Website schließen, nachdem es darüber informiert wurde, dass sie nicht für Personen unter 18 Jahren bestimmt ist? Obwohl es überhaupt nichts bringt, wird dieses „Verifikationsverfahren“ fürs Alter immer noch eingesetzt. Schreiben wir ein Programm, das nach dem Alter des Benutzer fragt. Wenn die Antwort <18 ist, zeigt das Programm „Du bist noch zu jung“ an.
2
Aufgabe
Java Syntax,  Level 4Lektion 6
Gesperrt
Der Türsteher
Der Nachtclub Chastity hat Firma X beauftragt, einen automatischen Türsteher zu entwickeln. Ein Junior-Entwickler (du) wurdest angewiesen, eine Methode zur Besucheridentifikation zu schreiben, die eine Alterskontrolle beinhaltet. Die Gäste müssen über die Tastatur ihren Namen und ihr Alter eingeben. Wenn sie 20 Jahre oder älter sind, soll der automatische Türsteher dem Gast versichern, dass alles in Ordnung ist –18 Jist alt genug.
4
Aufgabe
Java Syntax,  Level 4Lektion 6
Gesperrt
Drei Zahlen
Tastatureingaben, Zahlenvergleiche und Bildschirmausgaben – CodeGym-Teilnehmer auf Level 4 üben diese Fähigkeiten, bis sie automatisiert ablaufen. Schreiben wir ein Programm, bei dem der Benutzer drei Zahlen über die Tastatur eingibt. Dann führen wir einen Vergleich durch. Wenn wir eine Zahl finden, die sich von den beiden anderen unterscheidet, zeigen wir ihre Ordnungszahl an.
2
Aufgabe
Java Syntax,  Level 4Lektion 6
Gesperrt
Ziel erfasst!
Ein Militärroboter wurde mit einem Visier ausgestattet, das ihm dabei hilft, feindliche Blechdosen abzuschießen. Ein Informant übergibt dem Roboter die Oberflächenkoordinaten des Feindes (Breitengrad und Längengrad). Lass uns ein Programm schreiben, das dem Roboter hilft, den Quadranten zu berechnen, in dem sich die feindliche Blechdose befindet.