今天讲的set集合和Map 这是总结的笔记 {:2_33:}
一.Set集合:
1.特点:
1).无序的;
2).不存储重复值;
2.HashSet(类):
1).内部使用:哈希表结构;
2).验证元素的唯一性:
hashCode() && equals()
3).遍历方式:没有特殊方式,使用Collection的方式;
A.Object数组;
B.迭代器;
C.增强for;
3.LinkedHashSet(类):
1).内部使用:
链表:保证有序;
哈希表:保证唯一;
4.TreeSet(类):
1).内部使用:"树"结构;
2).树结构要对元素进行"排序":
A.自然排序:
元素实现Comparable接口;
重写compareTo()方法;
B.比较器排序:
自定义比较器,或者匿名内部类,实现:Comparator接口
重写compare()方法;
实例化TreeSet时,传递自定义比较器对象;
二.Map集合:
1.特点:
1).无序;
2).双列的;键值对存储;
3).所有的数据结构,都应用于"键",跟值无关;
2.Map的方法:
V put(K key,V value)
V remove(Object key)
void clear()
boolean containsKey(Object key)
boolean containsValue(Object value)
boolean isEmpty()
int size()
获取:
V get(Object key)
Set<K> keySet()(可以用于遍历)
Collection<V> values()
Set<Map.Entry<K,V>> entrySet()(可用于遍历)
3.遍历的方式:
1).keySet()和get(Object key):
2).entrySet()和Map.Entry的getKey()和getValue():
4.HashMap(类):
1).键不能重复,使用hashCode和equals()验证;
5.LinkedHashMap(类):
1).有序的;
6.TreeMap(类):
1).对"键"进行"排序",使用两种方式:
A.自然排序;
B.比较器排序;
|
|