集合遍历的几种方式

集合遍历有几种方式,下面是我总结的。

1     增强for循环:foreach
       语法: for(类型 变量:集合名){  }

这是上名代码的结果

集合: 非单个数据的存储:
     Iterator it = 集合对象.iterator();
     调用对象自己的iterator() 创建属于这个对象自己的迭代器,然后把迭代器赋值给迭代器的父类
     多态:迭代器进行向上转型
     就是父类的引用指向子类的对象
         向上转型

向下转型
 
      Iterator类有有三个方法
           1 boolean hasnext():判断游标的下一位是不是还有元素,如果有,就返回true,如果没有就返回false;
           2 next(): 将迭代器向下移动一位,并且取出将要指向的元素
           3 remove():删除当前指向的元素
           原则上上面三个都必须按照这个顺序调用

下面就是用迭代器进行遍历的代码

while:

for :

下面是结果:

还有一种for-get:

下面是结果:

其中再循环删除集合多个元素的时候,只能使用迭代器的remove()方法,因为集合自身的remove()方法删除以后,集合就变了,如果集合当中内容改变以后,就必须重新获取迭代器;但是我们这里仍然是原来的迭代器,所以在it.next()的地方会报错

时间: 2024-08-06 23:25:11

集合遍历的几种方式的相关文章

java集合遍历的几种方式总结及比较

集合类的通用遍历方式, 用迭代器迭代: Iterator it = list.iterator(); while(it.hasNext()) { Object obj = it.next(); } Map遍历方式: 1.通过获取所有的key按照key来遍历 //Set<Integer> set = map.keySet(); //得到所有key的集合 for (Integer in : map.keySet()) { String str = map.get(in);//得到每个key多对用v

Map集合遍历的四种方式理解和简单使用-----不能for循环遍历

~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值 1:无非就是通过map.keySet()获取到值,然后根据键获取到值 for(String s:map.keySet()){            System.out.println("key : "+s+" value : "+map.get(s));     } 2:通过Map.Entry(String,String) 获取,然后使用entry.getKey(

Java中List集合遍历的三种方式

首先创建一个List集合: List<String> list = new ArrayList<String>();list.add("name"); list.add("age"); list.add("sex"); 第一种:利用集合的size()方法遍历for(int i= 0:i<list.size();i++){ list.get(i);} 第二种:for增强循环for(String string : str

Map集合遍历的四种方式

Java Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)

package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date 2019/6/9 23:40 * @Version 1.0 */ public enum AlarmGrade { ATTENTION("attention", "提示"), WARNING("warning","警告"), SERIOUS(&

HashTable集合遍历的三种方法

hashtable集合遍历可以根据key,value以及key+value 示例代码: Hashtable table = new Hashtable(); Student stu = new Student(); stu.Name = "李四"; stu.Age = 18; Student stu1 = new Student(); stu1.Name = "张三"; stu1.Age = 18; Student stu2 = new Student(); stu

HashMap遍历的两种方式,推荐使用entrySet()

转自:HashMap遍历的两种方式,推荐使用entrySet() 第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) {     Map.Entry entry = (Map.Entry) iter.next();     Object key = entry.getKey();     Object val = entry.getValue(); } 效率

数组遍历的2种方式

for o in aa{ println(o) } for (index,value) in enumerate(aa){ println("\(index)\(value)") } 数组遍历的2种方式,布布扣,bubuko.com

map遍历的四种方式

原文 http://blog.csdn.net/dayanxuqun/article/details/26348277 以下是map遍历的四种方式: [java] view plaincopyprint? // 一.推荐只用value的时候用,都懂的... // Map.values()遍历所有的value,不遍历key for (String v : map.values()) { System.out.println("value= " + v); } [java] view pl