Map新特性
Map新特性
在JDK8中Map接口提供了一些新的遍历的方法,因为在本文中所有Map方法都是以默认值方法的方式实现的,所以现有的Map接口的实现可以直接拥有这些在默认值方法中定义的默认行为,而不需要新增一行代码
先定义一个map,存一些值
Map<Integer, String> map = new HashMap<>();
map.put(1, "jack");
map.put(2, "Tom");
map.put(3, "lili");
getOrDefault(Object,V):如果拿不到,就给一个默认字符串
String value = map.getOrDefault(6, "null");
putIfAbsent(k,v):只会添加不存在相同的key值
String val = map.putIfAbsent(3, "vince");
remove(k,v):必须匹配键和值才能删除
map.remove(1, "vince");
replace(k,v,v):只有键和值都对时,才能替换值
map.replace(3,"lili","tom")
compute(K key,BiFunction<? super K,? super V,? extends V>remappingFunction):计算指定键的映射及其当前映射的值
map.compute(1, ((integer, s) -> s + "1"));
computeIfPresent(K key,BiFunction<? super K,? super V,? extends V>remappingFunction):如果指定的键尚未与值相关联,尝试使用给定的映射函数计算其值,将其输入到此映射中
map.computeIfAbsent(6, integer -> integer + "test");
merge(K key, V value,BiFunction< ? super V ,? super V,?extends V>remappingFunction):如果指定的键尚未与值相关联或与null相关联,则将其与给定的非空值关联
map.merge(1, "jack", (s, s2) -> s + s2);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!