java list,set,map,数组间的相互转换详解
1.list转set
set set = new hashset( new arraylist());
2.set转list
list list = new arraylist( new hashset());
3.数组转为list
list stooges = arrays.aslist( "larry" , "moe" , "curly" );
此时stooges中有有三个元素。注意:此时的list不能进行add操作,否则会报 “java.lang.unsupportedoperationexception”,arrays.aslist()返回的是list,而且是一个定 长的list,所以不能转换为arraylist,只能转换为abstractlist
原因在于aslist()方法返回的是某个数组的列表形式,返回的列表只是数组的另一个视图,而数组本身并没有消失,对列表的任何操作最终都反映在数组上. 所以不支持remove,add方法的
string[] arr = { "1" , "2" };
list list = arrays.aslist(arr);
4.数组转为set
int [] a = { 1 , 2 , 3 };
set set = new hashset(arrays.aslist(a));
5.map的相关操作。
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);
6.list转数组
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));
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
更多java list,set,map,数组间的相互转换详解。