当前位置: 首页 > news >正文

北京工商注册核名泰州seo公司

北京工商注册核名,泰州seo公司,微博广告,找人代做网站注意事项在Java中如何遍历Map对象 *How to Iterate Over a Map in Java* 在java中遍历Map有不少的方法。我们看一下最常用的方法及其优缺点。 既然java中的所有map都实现了Map接口#xff0c;以下方法适用于任何map实现#xff08;HashMap, TreeMap, LinkedHashMap, Hashtable, 等…在Java中如何遍历Map对象 *How to Iterate Over a Map in Java* 在java中遍历Map有不少的方法。我们看一下最常用的方法及其优缺点。 既然java中的所有map都实现了Map接口以下方法适用于任何map实现HashMap, TreeMap, LinkedHashMap, Hashtable, 等等 方法一 在for-each循环中使用entries来遍历 这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用。 MapInteger, Integer map new HashMapInteger, Integer();for (Map.EntryInteger, 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。 MapInteger, Integer map new HashMapInteger, Integer();//遍历map中的键for (Integer key : map.keySet()) {System.out.println(Key key);}//遍历map中的值for (Integer value : map.values()) {System.out.println(Value value);}该方法比entrySet遍历在性能上稍好快了10%而且代码更加干净。 方法三 使用Iterator遍历 使用泛型 MapInteger, Integer map new HashMapInteger, Integer();IteratorMap.EntryInteger, Integer entries map.entrySet().iterator();while (entries.hasNext()) {Map.EntryInteger, 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);}你也可以在keySet和values上应用同样的方法。 该种方式看起来冗余却有其优点所在。首先在老版本java中这是惟一遍历map的方式。另一个好处是你可以在遍历时调用iterator.remove()来删除entries另两个方法则不能。根据javadoc的说明如果在for-each遍历中尝试使用此方法结果是不可预测的。 从性能方面看该方法类同于for-each遍历即方法二的性能。 方法四通过键找值遍历效率低 MapInteger, Integer map new HashMapInteger, Integer();for (Integer key : map.keySet()) {Integer value map.get(key);System.out.println(Key key , Value value);}作为方法一的替代这个代码看上去更加干净但实际上它相当慢且无效率。因为从键取值是耗时的操作与方法一相比在不同的Map实现中该方法慢了20%~200%。如果你安装了FindBugs它会做出检查并警告你关于哪些是低效率的遍历。所以尽量避免使用。 总结 如果仅需要键(keys)或值(values)使用方法二。如果你使用的语言版本低于java 5或是打算在遍历时删除entries必须使用方法三。否则使用方法一(键值都要)。
http://wiki.neutronadmin.com/news/273976/

相关文章:

  • 网站建设ppt演示文档如何建设电影网站
  • 长治网站制作怎么做适合注册公司的名字大全
  • 长沙建设工程官方网站济南官网seo推广
  • 哪个网站做推广做的最好宠物用品销售网站建设和技术现状
  • 镇江网站建设多少钱网站哪里可以查到做ddos
  • 网站开发语言检测小微平台
  • 青海农业网站建设公司seo深圳网络推广
  • 做网站CentOS还是win好it培训机构怎么样
  • 网站建设设计未来前景广州省建设监理协会网站
  • 新开传奇网站超变潍坊 logo设计公司
  • 哪些网站用天平做logo做网站推广利润
  • 上虞区住房和城乡建设局网站网站排名logo怎么做
  • 亚马逊网站建设的意义淘宝便宜的团购网站建设
  • 手机创建网站免费建设pc 移动网站
  • 网站开发知识产权归属问题即时聊天app开发
  • php做网站需要数据库吗外贸是做什么的工作内容是什么
  • 网站建设什么原因最主要英语卷子哪个网站可以做
  • 做购物商城网站建设商业空间展示设计
  • ps做 网站标准尺寸是多少合适游学做的好的网站
  • 网站建设宽度一般都是多少钱网站建设责任书
  • 海南省城乡建设厅网站首页衡水注册公司流程和费用
  • 网站购买流程网站开发 与 网页设计的区别
  • 装饰网站建设网智慧团建pc端登录
  • 网站服务器证书有问题网站制作杭州
  • 做电脑网站起什么名字那个视频网站做公开课比较好
  • 网站被黑是什么原因做网站
  • 网站优化排名易下拉稳定浙江学院网站建设
  • 龙岗龙城街道网站建设国外购买域名的网站
  • 贵阳经开区建设管理局网站美工个人网站
  • 做外卖有哪些网站推广型网站制作哪家好