Explication détaillée de la conversion entre la liste Java, l'ensemble, la carte et les tableaux
1.list vers set
Set set = new HashSet( new ArrayList());
2.set vers list
List list = new ArrayList( new HashSet());
3. Le tableau est converti en liste
List stooges = Arrays.asList( "Larry" , "Moe" , "Curly" );
A ce moment, il y a trois éléments dans les comparses. Remarque : L'opération d'ajout ne peut pas être effectuée sur la liste pour le moment, sinon "java.lang.UnsupportedOperationException" sera signalée. Arrays.asList() renvoie une liste, et il s'agit d'une liste de longueur fixe, elle ne peut donc pas être convertie. en ArrayList et ne peut être converti qu'en AbstractList
La raison est que la méthode asList() renvoie la forme de liste d'un tableau. La liste renvoyée est juste une autre vue du tableau, et le tableau lui-même. ne disparaît pas. Toute opération sur la liste sera finalement réfléchie sur le tableau. Par conséquent, les méthodes de suppression et d'ajout ne sont pas prises en charge
String[] arr = { "1" , "2" }; List list = Arrays.asList(arr);
4. 🎜>
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));