Heim > Java > javaLernprogramm > Warum erzeugt die Methode „toString()' von Java eine kryptische Ausgabe für Arrays?

Warum erzeugt die Methode „toString()' von Java eine kryptische Ausgabe für Arrays?

Barbara Streisand
Freigeben: 2024-11-16 11:01:03
Original
451 Leute haben es durchsucht

Why Does Java's `toString()` Method Produce Cryptic Output for Arrays?

Javas ungewöhnliches „ToString()“ für Arrays

In Java wird erwartet, dass die toString()-Methode eine nützliche, für Menschen lesbare Methode bereitstellt String-Darstellung eines Objekts. Beim Umgang mit Arrays gilt diese Erwartung jedoch nicht.

Die Besonderheit von Arrays ToString()

Bedenken Sie den folgenden Code:

char[] Array = {'a', 'b', 'c', 'd', 'e', 'f'};
System.out.println(Array.toString());
Nach dem Login kopieren

Anstatt die erwartete Zeichenfolge „abcdef“ zurückzugeben, gibt dieser Code Kauderwelsch wie „[C@6e1408“ oder „[C@e53108““ aus.

Dieses Verhalten entsteht, weil Javas standardmäßige toString()-Implementierung für Arrays erzeugt eine kryptische Zeichenfolge mit:

  • [ (linke Klammer)
  • C (Elementtyp, „C“ für char)
  • @ (Trennzeichen)
  • Identitäts-Hash-Code (eine eindeutige Kennung für das Array)

Die Lösung

Um eine für Menschen lesbare Zeichenfolgendarstellung eines Arrays zu erhalten, verwenden Sie die stattdessen die statische Arrays.toString()-Methode:

System.out.println(Arrays.toString(Array));
Nach dem Login kopieren

Diese Methode gibt explizit die gewünschte „abcdef“-Zeichenfolge zurück.

Die Begründung

Java Die Entscheidung, eine kryptische toString()-Implementierung für Arrays zu verwenden, wird oft als Fehler angesehen. Die Absicht hinter diesem Design bestand wahrscheinlich darin, Speicheradressen beim Debuggen zu priorisieren, aber es hat sich im täglichen Gebrauch als eher verwirrend als hilfreich erwiesen.

Das obige ist der detaillierte Inhalt vonWarum erzeugt die Methode „toString()' von Java eine kryptische Ausgabe für Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage