Iterator(foreach)
遍历时只能通过iterator去删除(添加)元素,不能直接通过集合对象删除或添加元素
Set
HashSet底层是一个HashMap
HashSet添加元素,先判断hashCode,Set中没有相同的则直接添加,Set中有相同的元素,则进一步判断equals,不同则添加,相同则添加不成功
HashSet删除元素,先判断hashCode,相同则再判断equals,equals相同则删除该
List
1、元素是否相同是通过equals方法进行判断的
2、Arrays.asList()得到的是定长的List,不能进行添加和删除
3、ArrayList底层是个数组、LinkedList有双向队列功能
Map
1、HashMap和Hashtable区别 Hashtable是线程安全的 Hashtable的键和值不能为null
2、HashMap的底层是一个HashMap.Entry数组