Collection和Array转换

来源:互联网 发布:stc80c52数据手册 编辑:程序博客网 时间:2024/05/15 12:33

数组转换为集合

private static void initArrayToCollection() {        // TODO Auto-generated method stub        String[] a=new String[10];        for(int i=0;i<10;i++){            a[i]=String.valueOf((char)('A'+i));        }        List<String> l=new ArrayList<>();        l=Arrays.asList(a);        System.out.println(l);        Set<String> s=new HashSet<>();//若数组中有重复元素,Set会自动忽略掉重复的元素        s.addAll(Arrays.asList(a));        System.out.println(s);    }

结果:

[A, B, C, D, E, F, G, H, I, J][A, B, C, D, E, F, G, H, I, J]

集合转换为数组

private static void initCollectionToArray() {        // TODO Auto-generated method stub        List<String> l=new ArrayList<>();        for(int i=0;i<10;i++){            l.add(String.valueOf((char)('A'+i)));        }//      String[] a=new String[l.size()];//      l.toArray(a);//若数组空间小于List的长度,则无法转换        String[] a;        a=l.toArray(new String[0]);//通过方法所返回的数组自动构造一个指定大小的数组空间        for(int i=0;i<a.length;i++){            System.out.print(a[i]+"  ");        }    }

结果:

A  B  C  D  E  F  G  H  I  J  

集合的交并差

private static void initJiaoBingCha() {        // TODO Auto-generated method stub        Set<String> aSet=new HashSet<>();        Set<String> bSet=new HashSet<>();        for(int i=0;i<10;i++){            aSet.add(String.valueOf((char)('A'+i)));        }        for(int i=5;i<15;i++){            bSet.add(String.valueOf((char)('A'+i)));        }        System.out.println("A "+aSet);        System.out.println("B "+bSet);        aSet.retainAll(bSet);//A=A∩B        System.out.println("A=A∩B "+aSet);        aSet.addAll(bSet);//A=A∪B        System.out.println("A=A∪B "+aSet);        aSet.removeAll(bSet);//A=A-B        System.out.println("A=A-B "+aSet);    }

结果:

A [A, B, C, D, E, F, G, H, I, J]B [F, G, H, I, J, K, L, M, N, O]A=A∩B [F, G, H, I, J]A=A∪B [F, G, H, I, J, K, L, M, N, O]A=A-B []
0 0
原创粉丝点击