首页 > 代码库 > java基础-集合笔记

java基础-集合笔记

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数组