java集合类的使用可以说是无处不在,总的我们可以将之分为三大块,分别是从Collection接口延伸出的List、Set和以键值对形式作存储的Map类型集合。
许多情况需要我们遍历出集合中的元素,并做相应的处理。
下面对各种类型的集合的遍历做一些总结,关于增强for循环,需要注意的是,使用增强for循环无法访问数组下标值,对于集合的遍历其内部采用的也是Iterator的相关方法。如果只做简单遍历读取,增强for循环确实减轻不少的代码量。
关于List与Set类型集合的遍历:
import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Set; public class ListAndSetTest { public static void main(String[] args) { // List集合的遍历 listTest(); // Set集合的遍历 setTest(); } private static void setTest() { Set<String> set = new HashSet<String>(); set.add("JAVA"); set.add("C"); set.add("C++"); // 重复的加不进去。 set.add("JAVA"); set.add("JAVASCRIPT"); //set集合遍历方法1,使用iterator Iterator<String> it = set.iterator(); while (it.hasNext()) { String value = it.next(); System.out.println(value); } //set集合遍历方法2,使用增强for循环。 for(String s: set){ System.out.println(s); } } // 遍历list集合 private static void listTest() { List<String> list = new ArrayList<String>(); list.add("java111"); list.add("java222"); list.add("java333"); list.add("java444"); list.add("java555"); // 遍历方式1 ,使用iterator Iterator<String> it = list.iterator(); while (it.hasNext()) { String value = it.next(); System.out.println(value); } // 遍历方法2 , 使用传统for循环进行遍历。 for (int i = 0, size = list.size(); i < size; i++) { String value = list.get(i); System.out.println(value); } // 遍历方法3 , 使用增强for循环进行遍历。 for (String value : list) { System.out.println(value); } } }
关于Map类型集合的遍历,keySet()与entrySet()方法:
//增强For循环 public class MapTest { public static void main(String[] args) { // 创建一个HashMap对象,并加入了一些键值对。 Map<String, String> maps = new HashMap<String, String>(); maps.put("111", "java111"); maps.put("222", "java222"); maps.put("333", "java333"); maps.put("444", "java444"); maps.put("555", "java555"); // 传统的遍历map集合的方法1; keySet() //traditionalMethod1(maps); // 传统的遍历map集合的方法2; entrySet() //traditionalMethod2(maps); // 使用增强For循环来遍历map集合方法1; keySet() //strongForMethod1(maps); // 使用增强For循环来遍历map集合方法2; entrySet() strongForMethod2(maps); } private static void strongForMethod2(Map<String, String> maps) { Set<Entry<String, String>> set = maps.entrySet(); for (Entry<String, String> entry : set) { String key = entry.getKey(); String value = entry.getValue(); System.out.println(key + " : " + value); } } private static void strongForMethod1(Map<String, String> maps) { Set<String> set = maps.keySet(); for (String s : set) { String key = s; String value = maps.get(s); System.out.println(key + " : " + value); } } // 使用entrySet()方法,获取maps集合中的每一个键值对, private static void traditionalMethod2(Map<String, String> maps) { Set<Map.Entry<String, String>> sets = maps.entrySet(); // 取得迭代器遍历出对应的值。 Iterator<Entry<String, String>> it = sets.iterator(); while (it.hasNext()) { Map.Entry<String, String> entry = (Entry<String, String>) it.next(); String key = entry.getKey(); String value = entry.getValue(); System.out.println(key + " : " + value); } } // 使用keySet()方法,获取maps集合中的所有键,遍历键取得所对应的值。 private static void traditionalMethod1(Map<String, String> maps) { Set<String> sets = maps.keySet(); // 取得迭代器遍历出对应的值。 Iterator<String> it = sets.iterator(); while (it.hasNext()) { String key = it.next(); String value = maps.get(key); System.out.println(key + " : " + value); } } }
相关推荐
java技巧,循环遍历集合,很方便的,是个通用的技巧。java中可以用来循环遍历任何一个集合的通用方法
增强型的for循环 和普通for循环一样 增强型的for循环 优点主要体现在集合中,随便举个例子 比如对 set 的遍历 一般是迭代遍历
用迭代器遍历用for循环遍历用增强的for循环遍历
java多叉树的实现:节点集合生成多叉树,单个节点添加到多叉树,深度遍历,广度遍历
暑假培训学习笔记之java循环遍历集合暑假培训学习笔记之java循环遍历集合
下面小编就为大家带来一篇java中循环遍历删除List和Set集合中元素的方法(推荐)。小编觉得挺不错的,在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
一段在java中使用的循环遍历集合中存储值的代码,给大家分享一下。
java Map 遍历方法 Map map = new HashMap(); Iterator it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry entry = (Map.Entry) it.next(); Object key = entry.getKey(); ...
主要介绍了java 使用foreach遍历集合元素的实例的相关资料,这里提供实例帮助大家理解如何使用foreach 进行遍历,希望能帮助到大家,
java中List对象集合的遍历方法 第一种: for(Iterator<A> it = list.iterator(); it.hasNext(); ) { .... } 这种方式在循环执行过程中会进行数据锁定, 性能稍差, 同时,如果你想在寻欢过程中去掉某个元素,只能...
多层嵌套循环 参数转换 数据库配置报文父子级结构 java实现
计算机后端-Java-Java核心基础-第24章 集合01 12. 新特性foreach循环遍历集合或数组.avi
增强for循环(也称为foreach循环)是Java提供的一种简化遍历数组、集合等数据结构的语法。它可以在不需要显式使用索引或迭代器的情况下,以更简洁的方式遍历元素。增强for循环适用于遍历具有迭代功能的对象。
Java 集合框架+实例 框架介绍了集合接口、集合类、集合算法等概念 实例包括集合比较、HashMap遍历、集合长度、集合遍历、集合输出、List 循环移动元素、遍历 HashTable 的键值等案例
集合框架的迭代和遍历: 解释如何使用迭代器和增强 for 循环来遍历集合中的元素。讲解如何避免在遍历过程中发生并发修改异常。 集合框架的性能和选择: 探讨集合框架中各种实现类的性能比较,讲解如何根据需求选择...
主要介绍了Java 遍历取出Map集合key-value数据的4种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
数据库中有张名为commanders的表存有多个人的信息, 现在通过后台去查询整张表, 返回一个集合, 要求使用thymeleaf动态的把集合内容以表格的形式展示在网页上 表的内容如下 后台关键代码如下 @Controller public ...
下面是用一个传统的for循环遍历集合的例子:用传统的for循环遍历数组的做法如下:这些做法逗比while循环更好,但是它们并不完美。如果真的那么不幸,并且外部集
Stream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来提供一种对 Java 集合运算和表达的高阶抽象。 这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选,...
Java集合类是Java.util包中的重要内容,它提供了一套性能优良、使用方便的接口和类,用于处理对象的集合。这些类主要用于存储、检索、操作一组对象数据。 Java集合类主要包括两种类型的容器:Collection和Map。...