Heim > Java > javaLernprogramm > Hauptteil

Warum löst „List.toArray()' eine „ClassCastException' aus, wenn es mit einer „Liste' verwendet wird?

Linda Hamilton
Freigeben: 2024-10-30 19:15:03
Original
385 Leute haben es durchsucht

Why does `List.toArray()` throw a `ClassCastException` when used with a `List`?

Java: (String[])List.toArray() Gibt ClassCastException aus

Bei Verwendung von List.toArray() mit einer Liste von Zeichenfolgen , könnte man erwarten, ein Array von Strings zu erhalten. Dies kann jedoch häufig zu einer ClassCastException führen.

Dies geschieht, weil toArray() ein Object[] und keinen String[] zurückgibt. Dies liegt daran, dass Generika zur Laufzeit nicht verfügbar sind. Wenn eine Liste als List erstellt wird, wird sie als Liste gespeichert. Zur Laufzeit gibt es keine Informationen über die Art der Objekte in der Liste. Daher muss toArray() ein Object[] zurückgeben.

Um einen String[] aus einer Liste von Strings zu erhalten, verwenden Sie toArray(new String[v2.size()]). Dadurch wird ein String[] der entsprechenden Größe zugewiesen und mit den Strings aus der Liste gefüllt.

Das obige ist der detaillierte Inhalt vonWarum löst „List.toArray()' eine „ClassCastException' aus, wenn es mit einer „Liste' verwendet wird?. 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!