网站首页 > java教程 正文
在Java软件开发工作中,最常用到的两个集合就是List和Map了,虽然在面试的时候你经常问道ArrayList和LinkedList的区别,HashMap和Hashtable的区别,如果想成功你也必须说出来一两点,但是我还真没有用过LinkedList和Hashtable(可能真的是我工作任务的限制吧)。但是不管怎么说,List和Map都是最常用的,作为一个技术人员,你必须要明白,深刻理解其中的两到三种方法,也要明白他们的使用场景。好吧,废话不多说,开始我们今天的经验分享吧!
现在开始进入今天的正题,使用Java代码遍历Map集合的方法汇总。
1、创建一个Java类,命名为MapTest
2、创建一个Map集合,并定义类型和put值:
3、循环遍历Map集合的第一种方法,代码如下:
/**
* 第一种
* foreach循环进行遍历
* 遍历的是key值,然后通过get(key)或者值
* key和keyset
*/
private static void firstMethod(HashMap<Integer, String> map){
System.out.println("foreach循环进行遍历");
for (Integer key : map.keySet()) {
System.out.println("key:"+key+"对应的值为:"+map.get(key));
}
}
4、通过Iterator遍历Map集合的第二种方法获取,代码如下:
/**
* 第二种
* 通过Iterator遍历获取
* 和List的遍历原理相同
*/
public static void secondMethod(HashMap<Integer, String> map){
System.out.println("通过Iterator遍历获取");
Iterator<Entry<Integer, String>> inte = map.entrySet().iterator();
while(inte.hasNext()){
Map.Entry<Integer, String> m = inte.next();
System.out.println("key:"+m.getKey()+"对应的值为:"+m.getValue());
}
}
5、通过map方法map.entrySet()遍历获取值的第三种方法,代码如下:
/**
* 第三种,通过map方法map.entrySet()遍历获取值
*/
public static void thirdMethod(HashMap<Integer, String> map){
System.out.println("第三种方式:entry");
for (Entry<Integer, String> str : map.entrySet()) {
System.out.println("key:"+str.getKey()+"对应的值为:"+str.getValue());
}
}
6、通过for循环,map.values()循环遍历获取值的第四种方法,代码如下:
这种方法是直接获取值,不获取key值:
/**
* 第四种,通过for循环,map.values()循环遍历获取值 直接获取值
*/
public static void fourthMethod(HashMap<Integer, String> map) {
System.out.println("通过map.values()循环遍历直接获取值");
for (String string : map.values()) {
System.out.println("map的值为:" + string);
}
}
7、不管是遍历Map还是List的,其本质都是获取对应的值,程序员在开发中可以根据开发场景适当的选择各种方法,但是理解其本质才是最主要的。我会在后期分享对List的遍历方法的总结,供大家参考,仅个人观点,有不足的地方欢迎支出,请继续关注我的分享。
8、提出疑问,哪一种方法速度最快,怎么验证效率?在Map集合中,HashMap和Hashtable的区别?
关注微信公众账号:thiscode,学习更多知识!
猜你喜欢
- 2024-10-26 Java8 List转Map,我卡壳了......
- 2024-10-26 HashMap 的 7 种遍历方式与性能分析!(强烈推荐)
- 2024-10-26 Java集合-- Map(Java集合类)
- 2024-10-26 js 函数式编程:不要再使用 for 循环啦,试试 map 吧
- 2024-10-26 大厂Java二面:Spring循环依赖,烂大街的问题这么答面试官才满意
- 2024-10-26 JAVA集合之 MAP和HASHMAP(java中map和hashmap)
- 2024-10-26 双列集合Map不再难懂:轻松掌握这些知识点!
- 2024-10-26 用到停不下来,Java 8 新特性:foreach 和 stream
- 2024-10-26 Go语言开发者必知必会的Map优化技巧
- 2024-10-26 计算机程序员的入门实践-Map常用的遍历方式(七)
你 发表评论:
欢迎- 最近发表
-
- Java常量定义防暴指南:从"杀马特"到"高富帅"的华丽转身
- Java接口设计原则与实践:优雅编程的艺术
- java 包管理、访问修饰符、static/final关键字
- Java工程师的代码规范与最佳实践:优雅代码的艺术
- 编写一个java程序(编写一个Java程序计算并输出1到n的阶乘)
- Mycat的搭建以及配置与启动(mycat部署)
- Weblogic 安装 -“不是有效的 JDK Java 主目录”解决办法
- SpringBoot打包部署解析:jar包的生成和结构
- 《Servlet》第05节:创建第一个Servlet程序(HelloSevlet)
- 你认为最简单的单例模式,东西还挺多
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)