Map集合 将键K映射到值V的对象 一个映射不能包含重复的键 每个键只能映射到一个值
Map和Collection的区别
1.Map是双列集合,Collection 是单列
2.数据结构
Map和键有关 ,Collection和元素有关
3.Map的键唯一,Collection的Set(hashset)保证元素的唯一性
V put(K key,V value) 添加元素
V remove(Object key) 通过key删除元素
void clear() 删除所有的元素
boolean containsKey(Object key) 判断是否包含这个key
boolean containsValue(Object value) 判断是否包含这个value
boolean isEmpty() 判断集合是否为空
int size() 获取集合的长度
V get(Object key) 根据键获取值
Set<K> keySet() 获取所有的键对应的Set集合
Collection<V> values() 获取所有的值
遍历方式
1. Set<String> a=m.keySet();
for(String b:a){
String c=m.get(b);
System.out.println(b+"xxx"+c);
}
2. Set<Entry<String,String>> e=m.entrySet();
for(Entry<String,String> a:e){
String b=a.getValue();
String c=a.getKey();
System.out.println(b+" "+c);
}
HashMap 哈希表 不安全 效率高 允许null值和null键
TreeMap 二叉树 不安全 效率高 元素排序:自然和比较器
LinkedHashMap 链表(有序)哈希(唯一)
HashMap和Hashtable的区别
HashMap特点:
底层数据结构为哈希表 线程不安全,效率高 允许null键null键
Hashtable:
底层数据结构为哈希表 线程安全,效率低 不允许null键null键
Collections(集合工具类)
集合练习
模拟斗地主(洗牌,发牌,看牌)
Map和Collection的区别
1.Map是双列集合,Collection 是单列
2.数据结构
Map和键有关 ,Collection和元素有关
3.Map的键唯一,Collection的Set(hashset)保证元素的唯一性
V put(K key,V value) 添加元素
V remove(Object key) 通过key删除元素
void clear() 删除所有的元素
boolean containsKey(Object key) 判断是否包含这个key
boolean containsValue(Object value) 判断是否包含这个value
boolean isEmpty() 判断集合是否为空
int size() 获取集合的长度
V get(Object key) 根据键获取值
Set<K> keySet() 获取所有的键对应的Set集合
Collection<V> values() 获取所有的值
遍历方式
1. Set<String> a=m.keySet();
for(String b:a){
String c=m.get(b);
System.out.println(b+"xxx"+c);
}
2. Set<Entry<String,String>> e=m.entrySet();
for(Entry<String,String> a:e){
String b=a.getValue();
String c=a.getKey();
System.out.println(b+" "+c);
}
HashMap 哈希表 不安全 效率高 允许null值和null键
TreeMap 二叉树 不安全 效率高 元素排序:自然和比较器
LinkedHashMap 链表(有序)哈希(唯一)
HashMap和Hashtable的区别
HashMap特点:
底层数据结构为哈希表 线程不安全,效率高 允许null键null键
Hashtable:
底层数据结构为哈希表 线程安全,效率低 不允许null键null键
Collections(集合工具类)
集合练习
模拟斗地主(洗牌,发牌,看牌)