Verstehen des Verhaltens von Arrays.asList() und seiner Einschränkungen
Bei der Arbeit mit Arrays und Sammlungen kommt es häufig vor, dass man ein Array in konvertieren möchte eine Liste zur einfacheren Handhabung. Zu diesem Zweck wird häufig die Methode Arrays.asList() von Java verwendet. Es gibt jedoch bestimmte Szenarien, in denen sich diese Methode möglicherweise nicht wie erwartet verhält.
Warum Arrays.asList() unterschiedliche Listen zurückgibt
Bedenken Sie den folgenden Code:
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5); // Works int[] ints = {1, 2, 3, 4, 5}; List<Integer> list = Arrays.asList(ints); // Returns List<int[]>
Im ersten Beispiel gibt Arrays.asList() ein List
Autoboxing-Einschränkungen
Die Autoboxing-Funktion von Java wandelt primitive Typen automatisch in ihre entsprechenden Wrapper-Typen um (z. B. int in Integer). Diese Konvertierung erfolgt jedoch nur für einzelne Elemente, nicht für Arrays von Grundelementen. Wenn daher ein int[] an Arrays.asList() übergeben wird, findet kein Autoboxing statt und die Methode gibt eine List
Lösungen
Um dieses Verhalten zu korrigieren und eine List
Das obige ist der detaillierte Inhalt vonWelche Einschränkungen gibt es bei der Arrays.asList()-Methode von Java und wie kann ich diese bei der Konvertierung primitiver Arrays in Listen überwinden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!