1 Array in Liste konvertieren
Rufen Sie die statische Methode asList der Arrays-Klasse auf.
alsListe
public static <T> List<T> asList(T... a)Gibt eine Liste fester Größe zurück, die durch das angegebene Array unterstützt wird (Änderungen an der zurückgegebenen Liste werden in das Array „durchgeschrieben“.) Diese Methode fungiert als Brücke zwischen Array-basierte und sammlungsbasierte APIs in Kombination mit Collection.toArray(). Die zurückgegebene Liste ist serialisierbar und implementiert RandomAccess.
Diese Methode bietet auch eine praktische Möglichkeit, eine Liste fester Größe zu erstellen, die so initialisiert wird, dass sie mehrere Elemente enthält:
List<String> stooges = Arrays.asList("Larry", "Moe", "Curly");
Parameter:
a – das Array, durch das die Liste gestützt wird
Rückgaben:
eine Listenansicht des angegebenen Arrays
Verwendung: Die API bietet eine Verwendungsmethode. Häufiger verwendeter Beispielcode:
Kopieren Sie den Codecode wie folgt:
String[] arr = new String[] {"str1", "str2"};
List<String> list = Arrays.asList(arr);
2 Liste in Array konvertieren
Die Liste hier verwendet ArrayList als Beispiel. Die API von ArrayList bietet zwei Funktionen, die verwendet werden können.
toArray
public Object[] toArray()Gibt ein Array zurück, das alle Elemente in dieser Liste in der richtigen Reihenfolge (vom ersten bis zum letzten Element) enthält.
Das zurückgegebene Array ist insofern „sicher“, als diese Liste keine Verweise darauf enthält (mit anderen Worten, diese Methode muss ein neues Array zuweisen).
Diese Methode fungiert als Brücke zwischen Array-basierten und Sammlungs-basierten APIs.
Spezifiziert durch:
toArray in der Schnittstelle Collection<E>
Spezifiziert durch:
toArray in der Schnittstelle List<E>
Überschreibungen:
toArray in der Klasse AbstractCollection<E>
Rückgaben:
ein Array, das alle Elemente in dieser Liste in der richtigen Reihenfolge enthält
Siehe auch:
Arrays.asList(Object[])
-------------------------------------------------- ----------------------------------
toArray
public <T> T[] toArray(T[] a)Gibt ein Array zurück, das alle Elemente in dieser Liste in der richtigen Reihenfolge enthält (vom ersten bis zum letzten Element ist der Laufzeittyp des zurückgegebenen Arrays der des angegebenen Arrays). Wenn die Liste in das angegebene Array passt, wird sie darin zurückgegeben. Andernfalls wird ein neues Array mit dem Laufzeittyp des angegebenen Arrays und der Größe dieser Liste zugewiesen.
Wenn die Liste in das angegebene Array passt und noch Platz übrig hat (d. h. das Array hat mehr Elemente als die Liste), wird das Element im Array unmittelbar nach dem Ende der Sammlung auf Null gesetzt (dies ist nützlich, um die Länge zu bestimmen). der Liste nur dann, wenn der Aufrufer weiß, dass die Liste keine Nullelemente enthält.)
Spezifiziert durch:
toArray in der Schnittstelle Collection<E>
Spezifiziert durch:
toArray in der Schnittstelle List<E>
Überschreibungen:
toArray in der Klasse AbstractCollection<E>
Parameter:
a – das Array, in dem die Elemente der Liste gespeichert werden sollen, andernfalls wird zu diesem Zweck ein neues Array desselben Laufzeittyps zugewiesen.
Rückgaben:
ein Array, das die Elemente der Liste enthält
Würfe:
ArrayStoreException – wenn der Laufzeittyp des angegebenen Arrays kein Supertyp des Laufzeittyps jedes Elements in dieser Liste ist
NullPointerException – wenn das angegebene Array null ist
Verwendung: Beispielcode:
Kopieren Sie den Codecode wie folgt:
List<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
int size = list.size();
String[] arr = (String[])list.toArray(new String[size]);//Bei Verwendung der zweiten Schnittstelle sind sowohl der Rückgabewert als auch die Parameter Ergebnisse