Java 集合遍历与循环多种方式

前言

Java中集合是非常常用非常重要的 ,应用是十分广泛的,作为集合这种数据结构,遍历循环方式也有很多种我们可以梳理总结不同的遍历方式,方便理解和运用

List 遍历方式

  1. List继承了Collection,是有序的列表。

  2. 实现类有ArrayList、LinkedList、Vector、Stack等

    1. ArrayList是基于数组实现的,是一个数组队列。可以动态的增加容量!

    2. LinkedList是基于链表实现的,是一个双向循环列表。可以被当做堆栈使用!

    3. Vector是基于数组实现的,是一个矢量队列,是线程安全的!

    4. Stack是基于数组实现的,是栈,它继承与Vector,特性是FILO(先进后出)!

所有list集合都是迭代器Iterator子类也都统称迭代器,可以通过迭代器方式去循环便利

  1. 第一种方式 迭代器遍历
1 List a= new ArrayList(); 2 a.add(1); 3 a.add(2); 4 a.add(3); 5 6 //获取迭代器 7 Iterator b=a.iterator(); 8 //判断是否有下一个值 9 while (b.hasNext()){ 10 //取出这个值 11 System.out.println(b.next()); 12 }
  1. 第二种方式
1List a= new ArrayList(); 2 a.add(1); 3 a.add(2); 4 a.add(3); 5 for(Iterator iterator=a.iterator();iterator.hasNext();){ 6 System.out.println(iterator.next()); 7 }
  1. 第三种方式 foreach 遍历
1 List a= new ArrayList(); 2 a.add(1); 3 a.add(2); 4 a.add(3); 5 for(Object o:a){ 6 System.out.println(o); 7 }
  1. 第四种方式 fori 遍历
1List a= new ArrayList(); 2 a.add(1); 3 a.add(2); 4 a.add(3); 5 for(int i=0;i<a.size();i++){ 6 System.out.println(a.get(i)); 7 }

Map遍历方式

  1. 按照key方式来遍历
1 Map a=new HashMap(); 2 a.put("a",1); 3 a.put("b",2); 4 a.put("c",3); 5 //获取所以key 6 Set key=a.keySet(); 7 for(Object o:key){ 8 //通过key 来获取所有值 9 System.out.println(a.get(o)); 10 }
  1. 通过Map.entrySet使用iterator遍历key和value
1 Map a=new HashMap(); 2 a.put("a",1); 3 a.put("b",2); 4 a.put("c",3); 5 // 获取Iterator 6 Iterator<Map.Entry<String, Integer>> it = a.entrySet().iterator(); 7 //遍历 8 while (it.hasNext()) { 9 Map.Entry<String, Integer> entry = it.next(); 10 System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); 11 }
  1. 通过Map.entrySet遍历key和value,推荐,尤其是容量大时
1Map a=new HashMap(); 2 a.put("a",1); 3 a.put("b",2); 4 a.put("c",3); 5 for ( Object o : a.entrySet()) { 6 //Map.entry<Integer,String> 映射项(键-值对) 有几个方法:用上面的名字entry 7 //entry.getKey() ;entry.getValue(); entry.setValue(); 8 //map.entrySet() 返回此映射中包含的映射关系的 Set视图。 9 Map.Entry<String,Integer> d=(Map.Entry<String,Integer> )o; 10 System.out.println("key= " + d.getKey() + " and value= " + d.getValue()); 11 }
  1. 通过Map.values()遍历所有的value,但不能遍历key
1 Map a = new HashMap(); 2 a.put("a", 1); 3 a.put("b", 2); 4 a.put("c", 3); 5 for (Object o : a.values()) { 6 System.out.println(o); 7 8 }
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

javaAPI_集合基础_List

List集合1.list集合以及其特点list集合是有序的,且可重复的。有序是指:存储的是什么那么遍历出来的也就是什么。2.list集合特有的功能(1).添加功能voidadd(intindex,objectelement):在指定位置添加元素(2).获取功能Objectget(intind

Java中遍历HashMap的5种方式

本教程将为你展示Java中HashMap的几种典型遍历方式。如果你使用Java8,由于该版本JDK支持lambda表达式,可以采用第5种方式来遍历。如果你想使用泛型,可以参考方法3。如果你使用旧版JDK不支持泛型可以参考方法4。1、通过ForEach循环进行遍历importjava.io.IOException;importjav

JavaScript中遍历数组和对象的方法

js数组遍历和对象遍历针对js各种遍历作一个总结分析,从类型用处,分析数组和对象各种遍历使用场景,优缺点等JS数组遍历:1,普通for循环,经常用的数组遍历vararr1,2,0,3,9,10,20,