Java中遍历容器List、Map、Set的方法总结
List
List<String> list = new ArrayList<>();
list.add("张三");
list.add("李四");
list.add("王五");
//遍历List
//方式一:for循环
System.out.print("for循环遍历List:");
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i));
}
System.out.println();
//方式二:增强型for循环
System.out.print("增强型for循环遍历List:");
for (String str :
list) {
System.out.print(str);
}
System.out.println();
//方式三:Iterator迭代器方式遍历
//for循环方式
System.out.print("Iterator迭代器遍历List(for循环):");
for (Iterator<String> iterator = list.iterator();iterator.hasNext();){
System.out.print(iterator.next());
}
System.out.println();
//while循环方式
System.out.print("Iterator迭代器遍历List(while循环):");
Iterator<String> iterator = list.iterator();
while(iterator.hasNext()){
System.out.print(iterator.next());
iterator.remove(); //如果想一边遍历一边删除,建议使用此种方式
}
Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");
set.add("four");
//遍历Set
//方式一:增强型for循环(底层用HashMap实现不能用简单for循环)
System.out.print("增强型for循环遍历Set:");
for (String str :
set) {
System.out.print(str);
}
System.out.println();
//方式二:迭代器Iterator
System.out.print("Iterator迭代器遍历Set:");
for (Iterator<String> iteraotr = set.iterator();iteraotr.hasNext();){
System.out.print(iteraotr.next());
} //while循环一样
Map
//遍历Map
Map<Integer,String> map = new HashMap<>();
map.put(1,"张三");
map.put(2,"李四");
map.put(3,"王五");
map.put(4,"赵六");
System.out.println();
//通过keySet方式
System.out.print("keySet方法遍历Map:");
Set<Integer> tmp = map.keySet();
for (Iterator<Integer> iterator1 = tmp.iterator();iterator1.hasNext();){
Integer key = iterator1.next();
System.out.print(key+"-->"+map.get(key));
}
System.out.println();
//通过entrySet方式
System.out.print("entrySet方法遍历Map:");
Set<Map.Entry<Integer,String>> t = map.entrySet();
for (Iterator<Map.Entry<Integer,String>> iterator1 = t.iterator();iterator1.hasNext();){
Map.Entry<Integer,String> entry = iterator1.next();
System.out.print(entry.getKey()+"-->"+entry.getValue());
}
Java中遍历容器List、Map、Set的方法总结的更多相关文章
- java 中遍历hashmap 和hashset 的方法
一.java中遍历hashmap: for (Map.Entry<String, Integer> entry : tempMap.entrySet()) { String ...
- Java中遍历Map集合的四种方法
在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...
- java中遍历map对象的多种方法
在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有ma ...
- java中遍历MAP,嵌套map的几种方法
java中遍历MAP的几种方法 Map<String,String> map=new HashMap<String,String>(); map.put("us ...
- Java中遍历map的四种方法 - 转载
在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...
- JAVA中遍历Map和Set方法,取出map中所有的key
Java遍历Set集合 1.迭代器遍历: Set<String> set = new HashSet<String>(); Iterator<String> it ...
- JAVA 中的 Collection 和 Map 以及相关派生类的概念
JAVA中Collection接口和Map接口的主要实现类 Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的 ...
- (转)Java中的容器详细总结
Java中的容器详细总结(编辑中) 原文链接:http://anxpp.com/index.php/archives/656/ 注:本文基于 Jdk1.8 编写 通常程序总是根据运行时才知道的某些条件 ...
- java中的容器问题
小小的总结一下java中的容器问题. 一.三个知识点 1.迭代器 1).java.util.Interator + hasnext(); next(); remove(); 2).java.lang. ...
随机推荐
- Windows 和 Linux 下生成以当前时间命名的文件
在 Windows.Linux 操作系统,分别利用BAT批处理文件和Shell脚本,生成类似“20110228_082905.txt”以“年月日_时分秒”命名的文件. Windows BAT批处理文件 ...
- 【BZOJ 3682】Phorni
题目链接 题目描述 Phorni 是一个音之妖精,喜欢在你的打字机上跳舞. 一天,阳光映射到刚刚淋浴过小雨的城市上时,Phorni 用魔法分裂出了许多个幻影,从 1 到 n 编号. 她的每一个幻影都站 ...
- WebService帮助类改良版,支持多webservice
帮助类代码 using System; using System.CodeDom; using System.CodeDom.Compiler; using System.Collections.Ge ...
- 绑定与非绑定以及property装饰器_day_21 作业题
1.定义MySQL类 1.对象有id.host.port三个属性 2.定义工具create_id,在实例化时为每个对象随机生成id,保证id唯一 3.提供两种实例化方式,方式一:用户传入host和po ...
- wx小程序知识点(六)
六.生命周期 (1)onLoad —— 加载时触发,只调用一次,可用来发送请求绑定数据.获取url中参数 (2)onShow —— 页面显示时触发,每次显示都会执行,用来获取需要频繁更新的数 ...
- [Linux系统] (1)常用操作(CentOS 7.x)
一.Linux系统配置 1.修改主机名 [/etc/hostname] vi /etc/hostname 在其中将旧名字修改为新主机名,保存,重启生效. 2.本地DNS映射 [/etc/hosts] ...
- 删除文件中的 ^M 字符
删除文件中的 ^M 字符 有时候,我们在 Linux 中打开曾在 Win 中编辑过的文件时,会在行尾看到 ^M 字符.虽然,这并不影响什么,但心里面还是有点不痛快.如果想要删除这些 ^M 字符,可以使 ...
- layui button按钮点击导致页面重新刷新的解决方案
网友的解决方法:(我只想说,放屁!!!而且大家都在复制粘贴,浪费时间) 方法一:将button标签更换为input <input class="layui-btn test" ...
- SimpleThreadPool给线程池增加自动扩充线程数量,以及闲时自动回收的功能
给线程池增加自动扩充线程数量,以及闲时自动回收的功能 package com.dwz.concurrency.chapter13; import java.util.ArrayList; import ...
- 如何在一个页面使用多个router-view显示不同的内容
todo https://www.jianshu.com/p/92f61bf9db81