学习的内容:
一.Set接口
1.特点:无序、无索引、不重复。
2.Set接口的实现类中HashSet的底层实现是Hashmap,TreeSet的底层实现是二叉树。
3.Set集合常用的集合方法:
add():加入元素。
clear():移除Set集合中的所有元素。
contains():判断Set集合中是否包含指定元素。
isEmpty():判断Set集合是否为空。
iterator():返回Set集合中对元素迭代的迭代器。
remove():从集合中删除元素。
size():返回集合中的元素数量。
4.关于hashCode和equals
(1)重写equals方法必须重写hashCode方法。
(2)当equals返回true,hashCode方法必须相同。
(3)hashCode返回值相同时,equals不一定返回true。
(4)多次调用hashCode,值相等。
二.Map接口
1.键和值都可以为null。
2.HashMap类的常用方法:
put():加入元素,返回与此key关联的原有的value,若不存在则返回null。
clear():从集合中清除所有元素。
containKey():根据key从集合中判断key是否存在。
containValue():根据value从集合中判断value是否存在。
get():根据key返回key对应的值。
keySet():返回Map集合中包含的键集合。
remove():从集合中删除key对于的元素,返回与key对应的原有value,若不存在则返回null。
size():返回集合中的元素的数量。
3.装箱和拆箱
(1)装箱是指将基本类型的数据转换成包装类的数据。
(2)拆箱就是将包装类的数据转换为基本类型的数据。
(3)引用类型和基本类型对比的时候,会自动进行拆箱。
4.HashMap和Hashtable的区别
(1)Hashtable是线程安全的,HashMap是非线程安全的,所以HashMap比Hashtable的性能更强。
(2)Hashtable不允许使用null值作为key或value,但是HashMap是可以的。
一.Set接口
1.特点:无序、无索引、不重复。
2.Set接口的实现类中HashSet的底层实现是Hashmap,TreeSet的底层实现是二叉树。
3.Set集合常用的集合方法:
add():加入元素。
clear():移除Set集合中的所有元素。
contains():判断Set集合中是否包含指定元素。
isEmpty():判断Set集合是否为空。
iterator():返回Set集合中对元素迭代的迭代器。
remove():从集合中删除元素。
size():返回集合中的元素数量。
4.关于hashCode和equals
(1)重写equals方法必须重写hashCode方法。
(2)当equals返回true,hashCode方法必须相同。
(3)hashCode返回值相同时,equals不一定返回true。
(4)多次调用hashCode,值相等。
二.Map接口
1.键和值都可以为null。
2.HashMap类的常用方法:
put():加入元素,返回与此key关联的原有的value,若不存在则返回null。
clear():从集合中清除所有元素。
containKey():根据key从集合中判断key是否存在。
containValue():根据value从集合中判断value是否存在。
get():根据key返回key对应的值。
keySet():返回Map集合中包含的键集合。
remove():从集合中删除key对于的元素,返回与key对应的原有value,若不存在则返回null。
size():返回集合中的元素的数量。
3.装箱和拆箱
(1)装箱是指将基本类型的数据转换成包装类的数据。
(2)拆箱就是将包装类的数据转换为基本类型的数据。
(3)引用类型和基本类型对比的时候,会自动进行拆箱。
4.HashMap和Hashtable的区别
(1)Hashtable是线程安全的,HashMap是非线程安全的,所以HashMap比Hashtable的性能更强。
(2)Hashtable不允许使用null值作为key或value,但是HashMap是可以的。