1.new一个list之后,对他进行remove,remove(4)指删除下标为4的数据。而remove(new Integer(4))指的是删除数据为4的值。
2.list集合不能使用迭代器进行删除会报错,使用普通for循环时应该满足条件时是i--;
for(int i=0;i<list.size();i++){
if("b".equals(list.get(i))){
list.remove(i--);
}
}
使用迭代器修改list方法的话用ListIterator
3.linkdlist使用普通循环会特别慢 ,使用迭代器或者foreach循环(foreach循环的原理就是迭代器)去遍历LinkedList即可。
4.Arrays.asList()数组转换集合后便不能在对list进行add/remove/clear,asList()的返回对象是一个Arrays内部类,并没有实现集合的修改方法。
5.判断map是否为null的方法
isEmpty()方法判断Map是否有内容(即new分配空间后是否put键值对),若没有内容则true,否则false
== null是判断map是否为null(即是否new分配空间,和其中的键值对没关系),若没有内容则true,否则false
6.HashMap的value直接转换为LIst集合
HashMap<Integer, 数据类型> hashMap= new HashMap<>();
(1).List<数据类型> list = new ArrayList<>(hashMap.values());
(2).已经有对应的集合了 list.addAll(hashMap.values());