Lernpfad:Würfelspiel in Java/Mit Strings arbeiten: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
Zeile 13: Zeile 13:
</syntaxhighlight>
</syntaxhighlight>


{{Hint:Start}}
{{Info:Start}}
'''Hinweis''' Auf einem <code>int</code> können zum Beispiel keine Methoden aufgerufen werden, da Integer  
'''Hinweis''' Auf einem <code>int</code> können zum Beispiel keine Methoden aufgerufen werden, da Integer  
zunächst keine Objekte sind. Die Java Klassenbibliothek enthält aber auch für diese ''primitiven Datentypen''  
zunächst keine Objekte sind. Die Java Klassenbibliothek enthält aber auch für diese ''primitiven Datentypen''  
eigene Klassen. Zum Beispiel die [https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html Klasse Integer].  
eigene Klassen. Zum Beispiel die [https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html Klasse Integer].  
Sie enthält unter anderem hilfreiche Klassenmethoden zum Umgang mit Integern.
Sie enthält unter anderem hilfreiche Klassenmethoden zum Umgang mit Integern.
{{Hint:End}}
{{Info:End}}


Da Strings Objekte sind, kann es bei ihrer Verwendung zu unerwarteten Fehlern kommen. Ein häufiges Problem ist der  
Da Strings Objekte sind, kann es bei ihrer Verwendung zu unerwarteten Fehlern kommen. Ein häufiges Problem ist der  
Zeile 33: Zeile 33:


Im Gegensatz zur Erwartung wird <code>Die Strings sind unterschiedlich.</code> ausgegeben. Der Operator <code>==</code>  
Im Gegensatz zur Erwartung wird <code>Die Strings sind unterschiedlich.</code> ausgegeben. Der Operator <code>==</code>  
vergleicht bei Objekten die Objektidentität, also obe es sich um das Gleiche Objekt handelt. Oben werden zwei Objekte der Klasse
vergleicht bei Objekten die Objektidentität, also ob es sich um dasselbe Objekt handelt. Oben werden zwei Objekte der Klasse
String mit demselben Inhalt <code>Test</code> erzeugt. Da es sich aber um unterschiedliche Objekte handelt, ergibt der Vergleich
String mit dem gleichen Inhalt <code>Test</code> erzeugt. Da es sich aber um unterschiedliche Objekte handelt, ergibt der Vergleich
<code>false</code>.  
<code>false</code>.