Auch eine JAVA-Frage

  • Themenstarter Themenstarter Shlyakh
  • Beginndatum Beginndatum
S

Shlyakh

Guest
Nehmen wir an, ich erzeuge einen String:

String st = new String("abc");

Wenn ich nun sage st.toUpperCase(); --> ändert sich dann möglicherweise die Referenz? Oder ist es grundsätzlich dasselbe Stringobjekt, d. h. ist nach Aufruf der Uppercasemethode die Referenz von st noch die gleiche?
 
Da String eine immutable Class ist bekommst du z.B. bei st.toUpperCase() ein neues Objekt und somit auch eine neue Objektreferenz.
 
Da String eine immutable Class ist bekommst du z.B. bei st.toUpperCase() ein neues Objekt und somit auch eine neue Objektreferenz.

bsp:

Code:
String st = new String("abc");
st.toUpperCase();
st ist hier immernoch "abc" ... weswegen du das mit new String("abc") initialisierst statt nur mit "abc" bleibt ein rätsel... beides führt zum gleichen ergebnis

Code:
String st = new String("abc");
st = st.toUpperCase();
jetzt ist st "ABC"
 
Zurück
Oben