MENU

List集合转化为数组

May 16, 2020 • Read: 84 • Note,JavaCore

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);
        }
    }
}

本站所有未注明转载的文章均为原创,并采用CC BY-NV-SA 4.0 授权协议,转载请注明来源。

Archives QR Code
QR Code for this page
Tipping QR Code