package other;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
public class Test {
/************************************遍历list************************************************/
//foreach遍历list
public void forEachlist(List<String> list){
for(String a: list){
System.out.println("foreach遍历list: " + a);
}
}
//用iterator遍历list
public void iteratorList(List<String> list){
Iterator<String> it = list.iterator();
while(it.hasNext()){
String a = it.next();
System.out.println("iterator遍历list: " + a);
}
}
//iterator松耦合,符合抽象编程的原则。foreach也是使用iterator来遍历的 。如果用普通的for来遍历的话,是紧耦合,可以倒着循环
/*************************************遍历MAP*****************************************************/
//通过 entrySet 来遍历Map
public void entryMap(Map<String,String> hm){
Iterator it = hm.entrySet().iterator();
while(it.hasNext()){
Map.Entry entry = (Entry) it.next();
System.out.print("KEY: " + entry.getKey() + " || ");
System.out.println("VAL: " + entry.getValue());
}
}
//通过 keySet 来遍历Map
public void keyMap(Map<String,String> hm){
Iterator it = hm.keySet().iterator();
while (it.hasNext()) {
String key = (String)it.next();
String val = (String)hm.get(key);
System.out.print("KEY: " + key + " || ");
System.out.println("VAL: " + val);
}
}
//keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。而entryset只是遍历了第一次,他把key和value都放到了entry中。
// 所以使用entryset遍历map效率要高一些。
public static void main(String[] args) {
Test test = new Test();
/*测试遍历list的方法
List<String> list = new ArrayList<String>();
list.add("6");
list.add("2");
list.add("3");
list.add("4");
// test.forEachlist(list);
test.iteratorList(list);
*/
//测试遍历map的方法
Map<String, String> m = new HashMap<String, String>();
m.put("1", "1");
m.put("2", "2");
m.put("3", "3");
m.put("4", "4");
m.put("5", "5");
m.put("6", "6");
// test.entryMap(m);
test.keyMap(m);
}
}
分享到:
相关推荐
根据提供的文件信息,本文将详细解析Struts2框架中遍历集合的方法,并附带介绍一些常用的Struts2标签使用技巧。 ### Struts2框架简介 Struts2是Apache基金会下的一个开源项目,它是一个用于开发Java Web应用程序的...
MySql练习6:遍历集合,生成HTML文件.zip MySql练习6:遍历集合,生成HTML文件.zip MySql练习6:遍历集合,生成HTML文件.zip MySql练习6:遍历集合,生成HTML文件.zip
06丨Stream如何提高遍历集合效率?.html
迭代器模式是一种行为设计模式,主要目的是在不暴露集合内部结构的情况下,允许外部代码遍历集合的所有元素。这种模式将遍历操作从集合类中分离出来,实现了数据结构和遍历机制的解耦。在大多数编程语言中,迭代器...
使用 Iterator 接口遍历集合元素 Java 集合框架中的 Iterator 接口是一种非常重要的接口,它主要用于遍历集合中的元素。Iterator 接口隐藏了各种 Collection 实现类的底层细节,向应用程序提供了遍历 Collection ...
### c标签遍历集合嵌套的List集合 在Java Web开发中,经常需要处理复杂的集合数据结构,并将其展示到前端页面上。对于嵌套的集合(例如:List中包含List),使用`c`标签库(JSTL)进行遍历是一种常见的做法。本文将...
### Java技巧:循环遍历集合的通用方法 在Java编程中,经常需要对集合进行遍历操作以处理其中的数据元素。对于不同的集合类型(如`List`、`Set`、`Map`等),如何实现一个统一且高效的遍历方式是非常重要的。本文将...
而循环遍历集合是Java开发中的基础操作,对于理解和熟练运用Java集合框架至关重要。本笔记将深入探讨如何使用不同类型的循环来遍历Java集合,包括数组列表(ArrayList)、链表(LinkedList)、集合(Set)和映射...
本文将深入分析Java中三种主要的遍历集合方法:传统的for循环遍历、迭代器遍历以及foreach循环遍历。 1. **传统的for循环遍历**: 这种方式依赖于计数器,开发者需要手动初始化并维护计数器,依次读取集合中的每个...
day07_18_ArrayList练习三_按指定格式遍历集合字符串
总的来说,迭代器模式在遍历集合时提供了一种优雅的方式,但同时也要求我们在遍历过程中谨慎处理对集合的修改。正确使用迭代器提供的方法,如`Iterator.remove()`,可以确保遍历的正确性和一致性。同时,了解不同...
计算机后端-Java-Java核心基础-第24章 集合01 10. Iterator遍历集合的两种错误写法.avi
计算机后端-Java-Java核心基础-第24章 集合01 12. 新特性foreach循环遍历集合或数组.avi
本文将详细介绍Java中遍历集合的三种常见方式,并通过实例进行对比分析。 ### 方式一:转化为数组后遍历 这种方式首先将集合(如List)转化为数组,然后通过数组的for-each循环进行遍历。代码如下: ```java ...
下面我们将深入探讨如何在C#中使用`foreach`语句遍历集合类型,并通过一个具体的示例来展示其实现方式。 首先,`foreach`语句的基本语法如下: ```csharp foreach (Type variable in collection) { // 循环体 } `...
接下来,我们将深入探讨这两个接口,以及它们在遍历集合时的差异和应用场景。 首先,`Enumeration` 是早期Java版本(JDK 1.0)中引入的接口,主要用于遍历 `Vector`、`Hashtable` 等旧版集合类。`Enumeration` 提供...
在Java编程语言中,`foreach`循环是一种简洁的遍历集合元素的方式,它引入自Java 5(JDK 1.5)。`foreach`循环也被称为增强for循环,它的主要目的是简化对数组和集合的迭代操作。在本实例中,我们将深入探讨如何使用...
Thymeleaf提供了迭代器`th:each`来遍历集合。以下是一个展示`commanders`列表的HTML表格示例: ```html <!DOCTYPE html> <title>Commanders List 编号 姓名 年龄 ${commanders}"> ${...
在Java中,常见的遍历集合的方法包括传统的for循环、迭代器Iterator以及foreach循环。 1. 传统的for循环遍历 这种方式需要开发者手动维护一个计数器,并通过调用`size()`方法获取集合长度,然后通过`get(index)`...
在编程领域,集合是数据组织的基本形式之一,而List接口是Java中集合框架的重要组成部分。List接口继承自Collection,它代表一个有序的元素序列,允许重复元素,并且提供了索引访问。本文将深入探讨List接口及其相关...