学完了集合部分,下面来分享一下!!
1.List集合常用子类:ArrayList、LinkedList、Vector。
2.Set集合的常用子类:HashSet、TreeSet。
3.Map集合的常用子类:HashMap、HashTable、TreeMap。
4. List和Set有什么异同点?
相同点:都是继承Collection集合下的接口。
不同点:List集合: 1:有序的(元素存入集合的顺序和取出的顺序一致)。
2:元素可以存储重复。
Set集合: 1:无序的(存入和取出顺序有可能不一致)。
2:不可以存储重复元素必须保证元素唯一性。
5. Map常用子类各有什么特点?
HashMap特点:
效率高,允许空值,线程安全/不同步。
默认的哈希表大小:16 默认的加载因子:0.75。
每次重新散列的方式:原数组的长度*2。
[HashMap、HashTable、LinkedHashMap自定义对象]必须是重写:hashcode方法和equal方法。
HashTable特点:
效率低,不允许空值,线程安全/同步。
默认的初始容量:11 默认的加载因子:0.75。
TreeMap特点:
所有元素保持一个固定的顺序,可用于Map集合中元素排序,不允许键对象是null。
便于插入、删除操作。
[自定义对象]必须实现:Comparable/Comparator接口。
知识点:
(1) Map集合存储和Collection有着很大不同:
1:Collection一次存一个元素;Map一次存一对元素。
2:Collection是单列集合;Map是双列集合。
3:Map中的存储的一对元素:一个是键,一个是值,键与值之间有对应(映射)关系,要保证map集合中键的唯一性。
(2) Itarator迭代
Boolean hasNext() 如果仍有元素可以迭代判断[有无下一个元素],则返回true
E Next() 返回迭代的下一个元素
Collection迭代 例子:
Iterator<String> iter=C.iterator();
while(iter.hasNext()){
String s=iter.next();
System.out.println(s);
}
|
|