实用小技巧(一)

原文地址:http://www.programcreek.com/2014/05/top-10-mistakes-java-developers-make/

1.把 Array转化成ArrayList:

     Integer[] a=new Integer[5];
        for (int i = 0; i < a.length; i++) {
            a[i]=i;
        }
        ArrayList<Integer> list=new ArrayList<>(Arrays.asList(a));
        for (Integer is : list) {
            System.out.println(is);
        }

  不可以用

List<String> list = Arrays.asList(arr);

因为Arrays.asList() 返回一个ArrayList,这个ArrayList 是Arrays的内部私有静态子类,不是 java.util.ArrayList,而是 java.util.Arrays.ArrayList

2.检查一个数组是否包含某个值:

Integer[] a=new Integer[5];
        for (int i = 0; i < a.length; i++) {
            a[i]=i;
        }
boolean b=Arrays.asList(a).contains(2);

3.从一个list中移除某个值,不可以用计数的方法,因为随着元素的移除list的长度会改变,应该使用Iterator:

ArrayList<String> list = new ArrayList<String>(Arrays.asList("a", "b", "c", "d"));
Iterator<String> iter = list.iterator();
while (iter.hasNext()) {
    String s = iter.next();
 
    if (s.equals("a")) {
        iter.remove();
    }
}

4.处理大型数据时,LinkedList比ArrayList更有优势。

原文地址:https://www.cnblogs.com/mada0/p/4701408.html