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