在JAVA中,我们可以遍历数组、set集合、map集合、list集合、字符串,那么具体我们可以用哪些方法遍历他们呢?
一、遍历Map集合
1. 使用 keySet() 方法遍历 Map 集合,该方法返回一个 Set 集合,包含了 Map 中所有的 key,可以通过遍历 Set 集合获取所有的 key 和对应的 value。
Map<String, Integer> map = new HashMap<>();
// 添加元素
for (String key : map.keySet()) {
Integer value = map.get(key);
// 处理 key 和 value
}
2. 使用 entrySet() 方法遍历 Map 集合,该方法返回一个 Set 集合,包含了 Map 中所有的 key-value 对,可以通过遍历 Set 集合获取所有的 key 和对应的 value。
Map<String, Integer> map = new HashMap<>();
// 添加元素
for (String key : map.keySet()) {
Integer value = map.get(key);
// 处理 key 和 value
}
3. 使用 forEach() 方法遍历 Map 集合,该方法接收一个 BiConsumer 函数式接口参数,可以通过 lambda 表达式遍历 Map 中的每个 key-value 对。
Map<String, Integer> map = new HashMap<>();
// 添加元素
map.forEach((key, value) -> {
// 处理 key 和 value
});
以上三种方式都可以遍历 Map 集合,具体使用哪种方式取决于具体的场景和需求。
二、遍历Set集合
1. 使用 for-each 循环遍历 Set 集合,该方式适用于所有实现了 Iterable 接口的集合类。
Set<String> set = new HashSet<>();
// 添加元素
for (String element : set) {
// 处理 element
}
2. 使用 Iterator 迭代器遍历 Set 集合,该方式适用于所有实现了 Iterable 接口的集合类。
Set<String> set = new HashSet<>();
// 添加元素
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
String element = iterator.next();
// 处理 element
}
3. 使用 forEach() 方法遍历 Set 集合,该方法接收一个 Consumer 函数式接口参数,可以通过 lambda 表达式遍历 Set 中的每个元素。
Set<String> set = new HashSet<>();
// 添加元素
set.forEach(element -> {
// 处理 element
});
以上三种方式都可以遍历 Set 集合,具体使用哪种方式取决于具体的场景和需求。
三、遍历List集合
1. 使用 for 循环遍历 List 集合,该方式适用于所有实现了 List 接口的集合类。
List<String> list = new ArrayList<>();
// 添加元素
for (int i = 0; i < list.size(); i++) {
String element = list.get(i);
// 处理 element
}
2. 使用 for-each 循环遍历 List 集合,该方式适用于所有实现了 Iterable 接口的集合类。
List<String> list = new ArrayList<>();
// 添加元素
for (String element : list) {
// 处理 element
}
3. 使用 Iterator 迭代器遍历 List 集合,该方式适用于所有实现了 Iterable 接口的集合类。
List<String> list = new ArrayList<>();
// 添加元素
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
String element = iterator.next();
// 处理 element
}
4. 使用 ListIterator 迭代器遍历 List 集合,该方式适用于所有实现了 List 接口的集合类,可以双向遍历 List 集合。
List<String> list = new ArrayList<>();
// 添加元素
ListIterator<String> iterator = list.listIterator();
while (iterator.hasNext()) {
String element = iterator.next();
// 处理 element
}
5. 使用 forEach() 方法遍历 List 集合,该方法接收一个 Consumer 函数式接口参数,可以通过 lambda 表达式遍历 List 中的每个元素。
List<String> list = new ArrayList<>();
// 添加元素
list.forEach(element -> {
// 处理 element
});
以上五种方式都可以遍历 List 集合,具体使用哪种方式取决于具体的场景和需求。
四、遍历数组(此篇在之前的博客中以具体介绍,以下为链接)