List和Map常用的几种遍历方式
2024-09-27 10:38:18
遍历一个List有以下几种方法:
/*//1.普通for循环的方式:
List<String> list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
for(int i=0;i<list.size();i++){
System.out.print(list.get(i)+",");
}*/ /*//2.foreach的方式:
List<String> list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
for(String str:list){
System.out.print(str+",");
}*/ /*//3.把链表变为数组再遍历的方式:
List<String> list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
String[] array=new String[list.size()];
list.toArray(array);
for(String str:array){
System.out.print(str+",");
}*/ /*// 4.迭代器遍历的方式:
List<String> list=new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
Iterator< String> iterator=list.iterator();
while (iterator.hasNext()) {
System.out.print(iterator.next()+",");
}*/
遍历一个List使用迭代器更加线程安全,因为它可以确保,在当前遍历的集合元素被更改的时候,它会抛出ConcurrentModificationException。
遍历map方法有以下几种:
/*//1.通过Map.keySet遍历的方式:
Map<String,String> map=new HashMap<String,String>();
map.put("1", "a");
map.put("2", "b");
map.put("3", "c");
map.put("4", "d");
Set<String> keySet=map.keySet();
for(String key:keySet){
System.out.print(key+"="+map.get(key)+",");
}*/ /*//2.通过Map.entrySet遍历的方式:
Map<String,String> map=new HashMap<String,String>();
map.put("1", "a");
map.put("2", "b");
map.put("3", "c");
map.put("4", "d");
Set<Entry<String,String>> entrySet=map.entrySet();
for(Entry<String,String> entry:entrySet){
System.out.print(entry.getKey()+"="+entry.getValue()+",");
}*/ /*//3.通过Map.entrySet使用iterator遍历的方式:
Map<String,String> map=new HashMap<String,String>();
map.put("1", "a");
map.put("2", "b");
map.put("3", "c");
map.put("4", "d");
Iterator<Map.Entry<String, String>> iter= map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry<String, String> entry = iter.next();
System.out.print(entry.getKey()+"="+entry.getValue()+",");
}*/ //4.通过Map.values()遍历所有的value,但不能遍历key的方式:
Map<String,String> map=new HashMap<String,String>();
map.put("1", "a");
map.put("2", "b");
map.put("3", "c");
map.put("4", "d");
for(String value:map.values()){
System.out.print(value+",");
}
最新文章
- 走向面试之数据库基础:一、你必知必会的SQL语句练习-Part 1
- 即时通信系统中如何实现:聊天消息加密,让通信更安全? 【低调赠送:QQ高仿版GG 4.5 最新源码】
- ElasticSearch快照备份及恢复
- iOS视频压缩存储至本地并上传至服务器-b
- (转载)关于having 1=1 和group by 爆表的思考和总结
- 解耦——Hybrid H5跨平台性思考
- access数据库的连接字符串以及数据库操作类
- hdu 5040 BFS 多维化处理图
- .Net Core 之 MSBuild 介绍
- vue 和 react 学习 异同点
- Linux kernel 之 socket 创建过程分析
- class文件打包成jar
- raphael.js 给元素 hover 添加glow() 外发光
- 编程算法 - 迷宫的最短路径 代码(C++)
- 尚硅谷JavaSEday18 String类练习题
- spring答题
- VRSProcess(一)
- java面试第九天
- #leetcode刷题之路24-两两交换链表中的节点
- hdu 3605(二分图多重匹配)
热门文章
- spirng: srping mvc配置(访问路径配置)搭建SpringMVC——最小化配置
- HDU 4531 bfs/康拓展开
- 18-THREE.JS 基本材质
- 远程登录MySQL
- input text 不显示输入的历史记录
- react privateRoute
- request.setAttribute(";username";, username);//一定要保存,OGNL才能获取${username}
- 【git】新建一个git仓库的方法
- 提高看log效率的小工具
- canvas 创建颜色渐变柱状图