Hallo
Ich habe hier ein kleines Programm, das ich nicht so ganz verstehe:
Wenn ich jetzt strings ausgeben lasse, hat es sich nicht verändert und das wundert mich etwas.
Das der erste Vergleich true ergibt, ist erstmal einleuchtend.
Da der zweite Vergleich true ergibt, müsste s und strings[0] doch das gleiche Objekt sein, so dass eine Veränderung von s auch den Eintrag im Array verändern müsste.
Leider gibt's nicht allzu viel über diesen Schleifentyp im Netz, so dass ich da nicht weiterkomme.
Könnte mir da jemand weitehelfen?
Nikolas
Ich habe hier ein kleines Programm, das ich nicht so ganz verstehe:
Code:
String[] strings = {"Hallo", "Welt"};
for (String s : strings) {
System.out.println(s);
System.out.println("equals "+ s.equals("Hallo"));
System.out.println(" == "+ (s == strings[0]);
s = "";
break; }
Wenn ich jetzt strings ausgeben lasse, hat es sich nicht verändert und das wundert mich etwas.
Das der erste Vergleich true ergibt, ist erstmal einleuchtend.
Da der zweite Vergleich true ergibt, müsste s und strings[0] doch das gleiche Objekt sein, so dass eine Veränderung von s auch den Eintrag im Array verändern müsste.
Leider gibt's nicht allzu viel über diesen Schleifentyp im Netz, so dass ich da nicht weiterkomme.
Könnte mir da jemand weitehelfen?
Nikolas