1:Map集合(掌握)
(1)存储是键值对类型的元素的集合。
(2)Map和Collection集合的区别?(面试题)
A:Map(夫妻对)
存储的是双列的元素
键是唯一的
值可以重复
B:Collection(单身汉)
存储的是单列的元素
List子类元素可以重复
Set子类元素唯一
(3)Map的功能概述:
A:添加功能
V put(K key,V value)
B:删除功能
V remove(K key)
C:判断功能
boolean containsKey(K key)
boolean containsValue(V value)
D:获取功能
V get(K key)
Set<K> keySet()
Collection<V> values()
Set<Map.Entry<K,V>> entrySet()
E:长度功能
int size()
(4)Map集合的遍历方式:
A:根据丈夫找妻子
根据键找值
B:根据结婚证找丈夫和妻子
根据键值对对象找键和值
Map<String,String> map = new HashMap<String,String>();
map.put("郭靖","黄蓉");
map.put("班长","凤姐");
//根据键找值
Set<String> set = map.keySet();
for(String key : set) {
String value = map.get(key);
System.out.println(key+"---"+value);
}
//根据键值对对象找键和值
Set<Map.Entry<String,String>> set = map.entrySet();
for(Map.Entry<String,String> me : set) {
String key = me.getKey();
String value = me.getValue();
System.out.println(key+"---"+value);
}
(5)HashMap集合的案例
HashMap<String,String>
HashMap<Integer,String>
HashMap<String,Student>
HashMap<Student,String>
(6)TreeMap集合的案例
TreeMap<String,String>
TreeMap<Student,String>
(7)LinkedHashMap
键唯一,有序(存储顺序和取出顺序一致)。
(8)Hashtable和HashMap的区别(面试题)
A:Hashtable
线程安全,效率低。
不允许null键和null值。
B:HashMap
线程不安全,效率高。
允许null键和null值。
(9)集合的嵌套遍历
A:Map集合嵌套Map
B:Map集合嵌套ArrayList
C:ArrayList集合嵌套Map
2:Collections工具类(理解)
(1)Collection和Collections的区别?(面试题)
A:Collection 是单列集合的顶层接口,定义了单列集合的共性功能。
B:Collections 是针对集合进行操作的工具类。
(2)Collections工具类的方法:
A:排序
B:二分查找
C:最大值
D:反转
E:随机置换
(3)随机置换案例
A:模拟洗牌
(1)存储是键值对类型的元素的集合。
(2)Map和Collection集合的区别?(面试题)
A:Map(夫妻对)
存储的是双列的元素
键是唯一的
值可以重复
B:Collection(单身汉)
存储的是单列的元素
List子类元素可以重复
Set子类元素唯一
(3)Map的功能概述:
A:添加功能
V put(K key,V value)
B:删除功能
V remove(K key)
C:判断功能
boolean containsKey(K key)
boolean containsValue(V value)
D:获取功能
V get(K key)
Set<K> keySet()
Collection<V> values()
Set<Map.Entry<K,V>> entrySet()
E:长度功能
int size()
(4)Map集合的遍历方式:
A:根据丈夫找妻子
根据键找值
B:根据结婚证找丈夫和妻子
根据键值对对象找键和值
Map<String,String> map = new HashMap<String,String>();
map.put("郭靖","黄蓉");
map.put("班长","凤姐");
//根据键找值
Set<String> set = map.keySet();
for(String key : set) {
String value = map.get(key);
System.out.println(key+"---"+value);
}
//根据键值对对象找键和值
Set<Map.Entry<String,String>> set = map.entrySet();
for(Map.Entry<String,String> me : set) {
String key = me.getKey();
String value = me.getValue();
System.out.println(key+"---"+value);
}
(5)HashMap集合的案例
HashMap<String,String>
HashMap<Integer,String>
HashMap<String,Student>
HashMap<Student,String>
(6)TreeMap集合的案例
TreeMap<String,String>
TreeMap<Student,String>
(7)LinkedHashMap
键唯一,有序(存储顺序和取出顺序一致)。
(8)Hashtable和HashMap的区别(面试题)
A:Hashtable
线程安全,效率低。
不允许null键和null值。
B:HashMap
线程不安全,效率高。
允许null键和null值。
(9)集合的嵌套遍历
A:Map集合嵌套Map
B:Map集合嵌套ArrayList
C:ArrayList集合嵌套Map
2:Collections工具类(理解)
(1)Collection和Collections的区别?(面试题)
A:Collection 是单列集合的顶层接口,定义了单列集合的共性功能。
B:Collections 是针对集合进行操作的工具类。
(2)Collections工具类的方法:
A:排序
B:二分查找
C:最大值
D:反转
E:随机置换
(3)随机置换案例
A:模拟洗牌
B:模拟洗牌,并排序
今天格外的热,空调又不好使了。一屋子臭脚丫子味。