• 技术文章 >Java >java教程

    java list,set,map,数组间的相互转换详解

    高洛峰高洛峰2017-01-22 15:31:38原创805
    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,数组间的相互转换详解相关文章请关注PHP中文网!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:JAVA中list,set,数组之间的转换详解 下一篇:java中List集合及其遍历详解
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 一文带你认识Java栈和队列• 一文掌握Java8新特性Stream流的概念和使用• Java线程学习之并发编程知识点• 完全掌握Java中的抽象类和接口• Java中的set集合如何理解
    1/1

    PHP中文网