持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第4天,点击查看活动详情
大家好,我是尚影嫣🌷,一名Java后端程序媛。如果您喜欢我的文章,欢迎点赞➕关注❤️,让我们一起成为更好的我们~🥰
Map
Map是一个键值对映射(key-value)的集合,与Collection没有任何关系。Map的键是无序不可重复的,值可以重复。
一、Map常用方法
常用的方法如下👇
public V put(K key,V value);
put方法将指定的键和值添加到Map集合中,如果key不重复返回值V是null,如果key重复返回值V是被替换的value值。
二、Map常用实现类
1 HashMap
HashMap底层采用哈希表的数据结构,是非线程安全的。
2 HashTable
HashTable底层采用哈希表的数据结构,是线程安全的,效率太低,使用较少,现在控制线程安全有其他的方式。
3 SortedMap
SortedMap继承Map,所以SortedMap也有无序不可重复的特点,但SortedMap集合中key的元素可以自动按照大小排列,称为可排列集合。
TreeMap TreeMap是SortedMap的实现类,底层采用二叉树的数据结构,无序不可重复,但存入key的元素会按照大小排列。
代码如下:
import java.util.*;
public class CollectionDemo {
public static void main(String[] args) {
// 创建一个HashMap集合
Map<String,Object> map=new HashMap<>();
// 添加键值对
map.put("id","111");
map.put("name","Jerry");
map.put("age","18");
map.put("height","18");
// 判断是否包含某个健
boolean b = map.containsKey("sex");
System.out.println(b);
// 删除集合元素
map.remove("height");
// 集合的遍历,1、通过keySet,获取所有的key值,并取出key对应的value
Set<String> set = map.keySet();
for (String key:set) {
System.out.println(key+", value: "+map.get(key));
}
// 遍历set集合
Iterator it=set.iterator();
while (it.hasNext()){
String k= (String) it.next();
System.out.println(k+", value: "+map.get(k));
}
// 集合的遍历,2、通过entrySet
Set<Map.Entry<String, Object>> entries = map.entrySet();
for (Map.Entry<String, Object> entry: entries) {
System.out.println(entry.getKey()+", "+entry.getValue());
}
Map<String, Object> hashTable=new Hashtable<>();
hashTable.put("id","222");
hashTable.put("name","Rosie");
hashTable.put("age","16");
}
}
```