So konvertieren Sie eine Listensammlung in ein Array in Java: 1. Verwenden Sie die Parameterlose toArray-Methode, das Syntaxformat ist „Object[] toArray();“ 2. Verwenden Sie die toArray-Methode, die Generika unterstützt, das Syntaxformat ist „
T[] toArray (T[] a);“.
Verwandte Empfehlungen: „Java Video Tutorial“
In Java stoßen wir häufig auf Szenarien, die eine Konvertierung zwischen Liste und Array erfordern. Wie konvertiert man also eine Liste in ein Array? Der folgende Artikel stellt es Ihnen vor.
Um List in ein Array zu konvertieren, können Sie die Methode toArray() oder toArray(T[] a) von List verwenden.
Liste in Array konvertieren
Um eine Liste in ein Array zu konvertieren, können Sie die toArray-Methode aufrufen.
Hier gibt es zwei überladene Methoden.
Verwenden Sie im Allgemeinen die zweite Methode mit generischen Parametern:
Object[] toArray(); <T> T[] toArray(T[] a);
2.1 . Parameterlose toArray-Methode
Object[] toArray();
Diese Methode konvertiert List direkt in ein Object[]-Array.
Java-Anfänger verwenden diese Methode gerne
Sie ist sehr praktisch, wenn der Code kompiliert wird.
Der Beispielcode für eine falsche Verwendung lautet wie folgt:
rreeeAs Sobald das Ergebnis ausgeführt wird, wird direkt ein Fehler gemeldet.
Objekt[] kann nicht in String[] konvertiert werden:
List<String> strList = new ArrayList<>(); strList.add("list-a"); strList.add("list-b"); String[] strArray = (String[]) strList.toArray();
Der korrekte Verwendungscode lautet wie folgt:
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
habe ein Objekt[] erhalten, das normalerweise nutzlos ist.
2.2. Unterstützt die generische toArray-MethodeList<String> strList = new ArrayList<>();
Object[] strArray = strList.toArray();
Diese Methode empfängt ein Array vom Typ T.
Beachten Sie, dass Basistypen nicht als generische Parameter verwendet werden können.
Wenn Sie ein Array vom Typ int[] verwenden,
Sie müssen int[] durch Integer[] ersetzen.
Der verwendete Beispielcode lautet wie folgt:
<T> T[] toArray(T[] a);2.3 Die Array-Größe des Eingabeparameters der toArray-Methode
Für den folgenden Code
analysieren Sie die Größe des initialisierten String-Arrays,
und die Größe von die Liste strList.size( ), die verschiedenen Auswirkungen von
auf den Rückgabewert:
List<String> strList = new ArrayList<>(); strList.add("list-a"); strList.add("list-b"); String[] strArray = strList.toArray(new String[strList.size()]);
2.3.1.size db15fa673e22f2fa1a7da9fc921a9a88 strList.size()Jetzt setze size=strList.size() +1,
Der geänderte Teil des Codes lautet wie folgt:String[] strArray1 = new String[strList.size()];Die zurückgegebenen strArray2 und strArray1 sind dasselbe Objekt, aber das letzte Element des Arrays ist null, Wenn das Array mehr Elemente enthält als in der Liste, Das Ende des Arrays unmittelbar nach dem Kopieren der Liste wird auf Null gesetzt, das heißt, strArray1[strList.size()]=null, Dies ist für den Aufrufer sehr nützlich, um es zu bestimmen die tatsächliche Länge des Arrays, Wenn Sie strList.size( )+2 verwenden, um das Array zu initialisieren, Das vorletzte Element des Arrays ist null. Weitere Kenntnisse zum Thema Programmierung finden Sie unter:
Programmierlehre
! !Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine Liste in ein Array in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!