package Day15;/*
@Author wanghongyuan
@Date 2020/12/24
*/
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
/*
java.util.Map集合,<K,V>集合
Map集合的特点:
1.Map集合是一个双列集合,一个元素包含两个值(一个key,一个value)
2.Map集合中的元素,Key和value的值可以相同也可以不同。
3.Map集合中的元素,Key是不允许重复的,value可以重复的
4.Map集合中的元素,key和value是一一对应的.
java.util.HashMap<K,V>集合 implements Map<k,v>接口
HashMap集合的特点:
1.HashMap集合底层是哈希表:查询速度特别快
JDK1.8之前:数组+单向链表
JDK1.8之后:数组+单向链表/红黑树(链表的长度超过8):提高查询速度
2.HashMap集合是一个无序的集合,存储元素和取出元素的顺序可能不一致
java.util.LinkedHashMap<k,v>集合 extends HashMap<k,v>集合
LinkedHashMap特点:
1.LinkedHashMap集合底层是一个哈希表+链表(保证迭代的顺序)
2.LinkedHashMap集合是一个有序的集合,储存元素和取出元素的顺序是一致的
*/
public class Demo01Map {
public static void main(String[] args) {
/*
Map集合中的第一种遍历方式:通过键找值的方式
Map集合中的方法:
set<k> KeySet()返回此映射中包含的键的Set 试图。
实现步骤:
1.使用Map集合中的方法keySet(),把Map集合所有的key取出来,存储到一个Set集合中
2.遍历set集合,获取Map集合中的每一个key
3.通过Map集合中的方法get(key),通过key找到value
*/
// 创建一个Map集合对象
Map<String,Integer> map = new HashMap<>();
map.put("赵丽颖",168);
map.put("王颖",168);
map.put("颖",168);
/*
通过Map集合方法中的Map.Entry把Map集合内部的多个Entry对象取出来,存储到Set集合中。遍历Set集合,获取Set集合中的每一个Entry对象。
这个Entry对象中的getKey()获取key和getvalue()获取value
*/
Set<Map.Entry<String, Integer>> entries = map.entrySet();
// System.out.println(entries);
Map遍历键值对案例练习
最新推荐文章于 2023-09-22 22:50:28 发布