Wie kann ich den Inhalt einer ArrayList wiedergeben (while Schleife)?

...komplette Frage anzeigen

1 Antwort

Du musst die toString Methode von Person überschreiben. Dort baust du einfach den String zusammen, den du auf der Konsole ausgeben willst.

Es ist allgemein immer eine gute Idee toString, equals und hashCode in Java zu überschreiben.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Charly986532
15.01.2016, 22:16

Tut mir leid so doof zu fragen aber an welcher Stelle und wie muss ich denn Person umschreiben? In der anderen Klasse direkt oder in dieser nur dann in welcher Methode? 

0
Kommentar von Michael Stockerl
15.01.2016, 22:22

Du musst das in Person überschreiben. Z.B. class Person { private String first; private String last; .... @Override public String toString() { return first + " " + last; } }

1
Kommentar von rmnstr
16.01.2016, 02:17

toString sollte eigentlich immer überschrieben werden, da die Standardimplementation von Object.toString nur den Klassennamen, gefolgt von "@" und der Hashcode-Repräsentation vorsieht. Das hilft in den seltensten Fällen beim Debuggen oder Ausgeben von Objekten.

Wenn man equals überschreibt, MUSS man auch hashCode überschreiben, sonst wird der Contract von Object.hashCode verletzt und hash-basierte Collections wie HashMap oder HashSet funktionieren nicht mehr!

Beim Überschreiben von equals sollte man jedoch dessen Contract beachten und wohlüberlegt vorgehen (reflektiv, transitiv, symmetrisch, konsistent und nicht-null).

0

Was möchtest Du wissen?