java map在JAVA中Map和HashMap有什么区别

java map  时间:2022-02-25  阅读:()

java中map的常用遍历方法

方法一 在for-each循环中使用entries来遍历 这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用。 Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for (Map.Entry<Integer, Integer> entry : map.entrySet()) { System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue()); } 注意:for-each循环在java 5中被引入所以该方法只能应用于java 5或更高的版本中。如果你遍历的是一个空的map对象,for-each循环将抛出NullPointerException,因此在遍历前你总是应该检查空引用。 方法二 在for-each循环中遍历keys或values。 如果只需要map中的键或者值,你可以通过keySet或values来实现遍历,而不是用entrySet。 Map<Integer, Integer> map = new HashMap<Integer, Integer>(); //遍历map中的键 for (Integer key : map.keySet()) { System.out.println("Key = " + key); } //遍历map中的值 for (Integer value : map.values()) { System.out.println("Value = " + value); } 该方法比entrySet遍历在性能上稍好 方法三使用Iterator遍历 使用泛型: Map<Integer, Integer> map = new HashMap<Integer, Integer>(); Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet().iterator(); while (entries.hasNext()) { Map.Entry<Integer, Integer> entry = entries.next(); System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue()); } 不使用泛型: Map map = new HashMap(); Iterator entries = map.entrySet().iterator(); while (entries.hasNext()) { Map.Entry entry = (Map.Entry) entries.next(); Integer key = (Integer)entry.getKey(); Integer value = (Integer)entry.getValue(); System.out.println("Key = " + key + ", Value = " + value); } 方法四、通过键找值遍历(效率低) Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for (Integer key : map.keySet()) { Integer value = map.get(key); System.out.println("Key = " + key + ", Value = " + value); } 总结 如果仅需要键(keys)或值(values)使用方法二。 如果你使用的语言版本低于java 5,或是打算在遍历时删除entries,必须使用方法三。 否则使用方法一(键值都要)。

在JAVA中Map和HashMap有什么区别

Map是一个接口不能实例化,HashMapMap的一个实现 ,就好比你Map是一辆汽车 HashMap是宝马牌的...

提速啦:美国多IP站群云服务器 8核8G 10M带宽 7IP 88元/月

提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...

美得云(15元/月)美国cera 2核4G 15元/月 香港1核 1G 3M独享

美得云怎么样?美得云好不好?美得云是第一次来推广软文,老板人脾气特别好,能感觉出来会用心对待用户。美得云这次为大家提供了几款性价比十分高的产品,美国cera 2核4G 15元/月 香港1核 1G 3M独享 15元/月,并且还提供了免费空间给大家使用。嘻嘻 我也打算去白嫖一个空间了。新用户注册福利-8折优惠码:H2dmBKbF 截止2021.10.1结束。KVM架构,99.99%高可用性,依托BGP...

炭云188元/年,上海CN2 VPS/2核/384MB内存/8GB空间/800GB流量/77Mbps端口/共享IP

炭云怎么样?炭云(之前的碳云),国人商家,正规公司(哈尔滨桓林信息技术有限公司),主机之家测评介绍过多次。现在上海CN2共享IP的VPS有一款特价,上海cn2 vps,2核/384MB内存/8GB空间/800GB流量/77Mbps端口/共享IP/Hyper-v,188元/年,特别适合电信网络。有需要的可以关注一下。点击进入:炭云官方网站地址炭云vps套餐:套餐cpu内存硬盘流量/带宽ip价格购买上...

java map为你推荐
一秒钟变格格“hold住”到底是什么意思啊。。。大蟒蛇平台什么是NG游戏,什么是NG游戏平台,什么是PY平台,PY平台的作用?要怎样破解手机?我的手机是水货N85?win7无线局域网win7本本如何搭建无线局域网呀?百度预测世界杯谁来帮我预测世界杯!iphone12或支持北斗导航iphone12是5G手机吗?物联卡官网移动物联卡怎么注册印象城市游戏论坛游聚游戏平台如何使用?客服系统方案营销呼叫中心系统的特点及解决方案?handoff怎么用Mac OS Yosemite Handoff,iOS8 Handoff怎么用音响解码大家好,音响锁住了怎么解锁?
php虚拟空间 shopex虚拟主机 国外免费vps vps交流 域名主机管理系统 个人域名备案 什么是域名解析 淘宝抢红包攻略 google电话 日本空间 网盘申请 智能骨干网 数字域名 架设服务器 hinet 卡巴斯基免费试用 香港新世界中心 atom处理器 网络速度 fatcow 更多