1.数组转ArrayList

ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(arr));

2.判断一个数组是否包含某个值,避免以下方式:

Set<String> set = new HashSet<String>(Arrays.asList(arr)); return set.contains(targetValue);
推荐使用for循环遍历的形式或者使用Apache Commons类库中提供的ArrayUtils类的contains方法。

3.在循环中删除列表中的元素导致ConcurrentModificationException,在remove操作后增加一个break

ArrayList<String> list = new ArrayList<String>(Arrays.asList("a","b","c","d")); for(String s:list){ if(s.equals("a")){ list.remove(s); break; } }

但还是推荐使用迭代器Iterator进行删除

4.ArrayList与LinkedList,如果有大量的增加删除操作并且没有很多的随机访问元素的操作,应该首先LinkedList