Detaillierte Erläuterung der Konvertierung zwischen Java-Liste, -Satz, -Map und -Arrays
1.Liste zum Festlegen
Set set = new HashSet( new ArrayList());
2.Satz zur Liste
List list = new ArrayList( new HashSet());
3. Das Array wird in eine Liste umgewandelt
List stooges = Arrays.asList( "Larry" , "Moe" , "Curly" );
Zu diesem Zeitpunkt gibt es in Stooges drei Elemente. Hinweis: Der Add-Vorgang kann derzeit nicht für die Liste ausgeführt werden, andernfalls wird „java.lang.UnsupportedOperationException“ gemeldet. Arrays.asList() gibt eine Liste zurück, und es handelt sich um eine Liste fester Länge, sodass sie nicht konvertiert werden kann in ArrayList und kann nur in AbstractList konvertiert werden
Der Grund dafür ist, dass die asList()-Methode die Listenform eines Arrays zurückgibt. Die zurückgegebene Liste ist nur eine andere Ansicht des Arrays und des Arrays selbst Nicht alle Operationen in der Liste werden im Array berücksichtigt. Daher werden die Methoden zum Entfernen und Hinzufügen nicht unterstützt.
String[] arr = { "1" , "2" }; List list = Arrays.asList(arr);
Das Array wird in „Set“ umgewandelt 🎜>
int [] a = { 1 , 2 , 3 }; Set set = new HashSet(Arrays.asList(a));
Map map = new HashMap(); map.put("1" , "a" ); map.put('2' , 'b' ); map.put('3' , 'c' ); System.out.println(map); // 输出所有的值 System.out.println(map.keySet()); // 输出所有的键 System.out.println(map.values()); // 将map的值转化为List List list = new ArrayList(map.values()); System.out.println(list); // 将map的值转化为Set Set set = new HashSet(map.values()); System.out.println(set);
List list = Arrays.asList( "a" , "b" ); System.out.println(list); String[] arr = (String[])list.toArray(new String[list.size()]); System.out.println(Arrays.toString(arr));