这篇文章主要介绍了 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));
来源: http://www.phperz.com/article/18/0227/358754.html