Map
Map集合概述
interface Map<K,V> K:键的类型;V:值的类型
将键映射到值的对象;不能包含重复的键;每个键可以映射到最多一个值
举例:学生的学号和姓名
student001 双笙
student002 叶子
student003 元汐
创建Map集合的对象
多态的方式
具体的实现类HashMap
package com.ye.myMap.itheima01; import java.util.HashMap; import java.util.Map; public class MapDemo01 { public static void main(String[] args) { //创建集合对象 Map<String,String> map = new HashMap<String,String>(); //put(K key, V value) 将指定的值与该映射中的指定键相关联(可选操作)。 map.put("student001","双笙"); map.put("student002","叶子"); map.put("student003","元汐"); //输出集合对象 System.out.println(map); } }
Map集合的基本功能
package com.ye.myMap.itheima01; import java.util.HashMap; import java.util.Map; public class MapDemo02 { public static void main(String[] args) { //创建集合对象 Map<String,String> map = new HashMap<String,String>(); //V put(K key,V value):添加元素 map.put("叶子","双笙"); map.put("叶无笙","陈元汐"); map.put("臭宝","小九"); //V remove(Object key):根据键删除值对元素 //V remove(Object key)返回值是删除的键对应的值 //删除不存在的键返回值为null // System.out.println(map.remove("臭宝")); // System.out.println(map.remove("小红")); //void clear():移除所有的建值对元素 //map.clear(); //boolean containsKey(Object key):判断集合是否包含指定的键 //boolean containsValue(Object key):判断集合是否包含指定的值 //返回值为:true/false System.out.println(map.containsKey("叶子")); System.out.println(map.containsValue("小九")); //boolean isEmpty():判断集合是否为空 System.out.println(map.isEmpty()); //int size():集合的长度,也是集合中键值对的个数 System.out.println(map.size()); System.out.println(map); } }
Map集合的获取功能
package com.ye.myMap.itheima01; import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Set; public class MapDemo03 { public static void main(String[] args) { Map<String,String> map = new HashMap<String,String>(); map.put("叶子","双笙"); map.put("叶无笙","陈元汐"); map.put("臭宝","小九"); //V get(Object key) : 根据键获取值 //System.out.println(map.get("叶子")); //Set<K> keySet():获取所有键的集合 //System.out.println(map.keySet()); Set<String> keySet = map.keySet(); for (String key : keySet) { //System.out.println(key); } //Collection<V> values():获取所有值的集合 //System.out.println(map.values()); Collection<String> values = map.values(); for (String value : values) { System.out.println(value); } System.out.println(map); } }
Map集合的遍历
方法一:
1.获取所有键的集合。用keySet()方法实现
2.遍历键的集合,获取到每一个键。用增强for循环
3.根据键去找值。用get(Object key)方法实现
package com.ye.myMap.yewusheng02; import java.util.HashMap; import java.util.Map; import java.util.Set; public class MapDemo01 { public static void main(String[] args) { Map<String,String> map = new HashMap<String,String>(); map.put("叶子","双笙"); map.put("叶无笙","陈元汐"); map.put("臭宝","小九"); //获取所有键的集合。用keySet()方法实现 Set<String> keySet = map.keySet(); //遍历键的集合,获取到每一个键。用增强for循环 for (String key : keySet) { //根据键去找值。用get(Object key)方法实现 String value = map.get(key); System.out.println(key +"\t"+ value); } } }
方法二:
1.获取所有键值对象的集合
Set<Map.Entry<K,V>>entrySet(): 获取所有键值对对象的集合
2.遍历键值对对象的集合,得到每一个值对对象
用增强for循环实现,得到每一个Map.Entry
3.根据键值对对象获取键和值
用getKey()得到键
用getValue()得到值
package com.ye.myMap.yewusheng02; import java.util.HashMap; import java.util.Map; import java.util.Set; public class MapDemo02 { public static void main(String[] args) { Map<String,String> map = new HashMap<String,String>(); map.put("叶子","双笙"); map.put("叶无笙","陈元汐"); map.put("臭宝","小九"); //获取所有键值对象的集合 //Set<Map.Entry<K,V>>entrySet(): 获取所有键值对对象的集合 Set<Map.Entry<String, String>> entrySet = map.entrySet(); //遍历键值对对象的集合,得到每一个值对对象 //用增强for循环实现,得到每一个Map.Entry for (Map.Entry<String, String> entry : entrySet) { //根据键值对对象获取键和值 // 用getKey()得到键 // 用getValue()得到值 String key = entry.getKey(); String value = entry.getValue(); System.out.println(key+"\t"+value); } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现