一、简介
实际项目中,通常会用到循环遍历List、Map等,今天有空总结了一下List/Map/Set的遍历方法,如下:
二、List遍历
List遍历的方法一般有三种:
【a】使用普通的for循环;
【b】使用增强for循环;
【c】使用Iterator接口遍历;
下面以一个示例说明一下List的遍历方法:
package com.wsh;import java.util.ArrayList;import java.util.Iterator;import java.util.List;/*** @Description: List接口遍历方法* @Author: weishihuai* @Date: /10/2 09:28*/public class TestList {private static List<String> list = new ArrayList<>();static {list.add("zhangsan");list.add("lisi");list.add("wangwu");}public static void main(String[] args) {/*** 方法一: 使用for循环*/for (int i = 0,size = list.size(); i < size;i++) {//zhangsan lisi wangwuSystem.out.println(list.get(i));}/*** 方法二: 使用增强for循环*/for (String string : list) {//zhangsan lisi wangwuSystem.out.println(string);}/*** 方法三: 使用Iterator方法*/Iterator<String> iterator = list.iterator();while (iterator.hasNext()) {String next = iterator.next();//zhangsan lisi wangwuSystem.out.println(next);}}}
三、Map遍历
Map集合遍历一般有四种方法:
【a】使用 hashMap.entrySet() 循环;
【b】使用Iterator接口遍历;
【c】使用 hashMap.keySet()/hashMap.values()/Iterator;
【d】使用hashMap.keySet()/forEach 遍历;
下面以一个示例说明一下Map的遍历方法:
package com.wsh;import java.util.*;/*** @Description: Map接口的遍历方法* @Author: weishihuai* @Date: /10/2 09:52*/public class TestMap {private static HashMap<String,Object> hashMap = new HashMap<>();static {hashMap.put("name","zhangsan");hashMap.put("age","20");hashMap.put("sex","male");}public static void main(String[] args) {/*** 方法一: 使用 hashMap.entrySet() 循环*/for(Map.Entry<String,Object> entry : hashMap.entrySet()) {String key = entry.getKey();String value = (String) entry.getValue();// sex=====>male// name=====>zhangsan// age=====>20System.out.println(key + "=====>" + value);}/*** 方法二: 使用Iterator接口遍历*/Iterator<Map.Entry<String, Object>> iterator = hashMap.entrySet().iterator();while (iterator.hasNext()) {Map.Entry<String, Object> entry = iterator.next();String key = entry.getKey();String value = (String) entry.getValue();// sex=====>male// name=====>zhangsan// age=====>20System.out.println(key + "=====>" + value);}/*** 方法三: 使用 hashMap.keySet()/hashMap.values()/Iterator*/Set<String> strings = hashMap.keySet();Collection<Object> values = hashMap.values();for (Iterator<String> iterator1 = strings.iterator();iterator1.hasNext();) {String key = iterator1.next();String value = (String) hashMap.get(key);// sex=====>male// name=====>zhangsan// age=====>20System.out.println(key + "=====>" + value);}for (Iterator i = values.iterator(); i.hasNext();) {String s = (String) i.next();// 循环输出value// male// zhangsan// 20System.out.println(s);}/*** 方法四: 使用hashMap.keySet()/forEach 遍历*/for (String key : hashMap.keySet()) {String value = (String) hashMap.get(key);// sex=====>male// name=====>zhangsan// age=====>20System.out.println(key + "=====>" + value);}}}
四、Set遍历
Set集合遍历一般有两种方法:
【a】使用Iterator接口遍历;
【b】使用增强for循环遍历;
下面以一个示例说明一下Set的遍历方法:
package com.wsh;import java.util.HashSet;import java.util.Iterator;/*** @Description: Set接口的遍历方法* @author: weishihuai* @Date: /10/2 09:01*/public class TestSet {private static HashSet<String> hashSet = new HashSet<>();static {hashSet.add("zhangsan");hashSet.add("lisi");hashSet.add("wangwu");}public static void main(String[] args) {/*** 方法一: Iterator遍历*/Iterator iterator = hashSet.iterator();//判断是否还有元素没有被遍历while (iterator.hasNext()) {//返回当前游标对应的元素,并把游标移向下一个元素String next = (String) iterator.next();//lisi zhangsan wangwuSystem.out.println(next);}for (Iterator iterator1 = hashSet.iterator(); iterator1.hasNext(); ) {//返回当前游标对应的元素,并把游标移向下一个元素String next = (String) iterator1.next();//lisi zhangsan wangwuSystem.out.println(next);}/*** 方法二: 使用增强for循环*/for (String string : hashSet) {//lisi zhangsan wangwuSystem.out.println(string);}}}
五、总结
以上是关于Java中常用集合List、Map、Set遍历方法的讲解,这只是作者的一些总结,仅供大家参考学习,希望对大家有所帮助,一起学习,一起进步。
如果觉得《Java集合Collection之遍历方法总结(List Map Set)》对你有帮助,请点赞、收藏,并留下你的观点哦!