ArrayList中有 toArray()toArray(T[] a) 可以转化为数组。

两者是不同的,对于前者是将list直接转为Object[] 数组,初学者经常直接用第一种就不管了,很容易导致类型报错。实际上我们开发中都是用后者这个重载的方法,往里面丢一个数组对象,长度赋为集合长度即可。

public class Demo4 {
    public static void main(String[] args) {
        List<String> stringList = new ArrayList<>();
        stringList.add("abc");
        stringList.add("ddd");
        stringList.add("abc");
        stringList.add("eee");

        String[] strings = stringList.toArray(new String[stringList.size()]);
        for (String string : strings) {
            System.out.println(string);
        }
    }
}

当需要过滤掉重复数据时,也简单,利用HashSet过滤一下就欧克了。

public class Demo4 {
    public static void main(String[] args) {
        List<String> stringList = new ArrayList<>();
        stringList.add("abc");
        stringList.add("ddd");
        stringList.add("abc");
        stringList.add("eee");

        HashSet<String> hashSet = new HashSet<>(stringList);
        stringList.clear();
        stringList.addAll(hashSet);
        String[] strings = stringList.toArray(new String[stringList.size()]);
        for (String string : strings) {
            System.out.println(string);
        }
    }
}

Last modification:April 15, 2021
如果觉得我的文章对你有用,请随意赞赏