Collection集合的遍历方式

Collection集合的遍历方式

Collection集合的遍历方式是全部集合都可以直接使用的

Collection集合的遍历方式有三种:
(1)迭代器。
(2)foreach(增强for循环)。
(3)Lambda表达式(JDK 1.8开始之后)

(1)、Collection集合的遍历–迭代器遍历集合

方法:public Iterator iterator()

方法的作用:获取集合对应的迭代器,用来遍历集合中的元素的

E next():获取下一个元素值!

boolean hasNext():判断是否有下一个元素,有返回true ,反之。

流程
1.获取当前集合的迭代器
Iterator it = lists.iterator();
2.定义一个while循环,问一次取一次。
通过it.hasNext()询问是否有下一个元素,有就通过
it.next()取出下一个元素。

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
  
public class CollectionDemo01 {
    public static void main(String[] args) {
        Collection<String> lists = new ArrayList<>();
        lists.add("赵敏");
        lists.add("小昭");
        lists.add("殷素素");
        lists.add("周芷若");
        System.out.println(lists);
        //[赵敏, 小昭, 殷素素, 周芷若]
        //1、得到集合的迭代器对象
        Iterator<String> it = lists.iterator();
//        System.out.println(it.next());//赵敏
//        System.out.println(it.next());//小昭
//        System.out.println(it.next());//殷素素
//        System.out.println(it.next());//周芷若
        //System.out.println(it.next());//NoSuchElementException

        //2.使用while循环遍历
        while (it.hasNext()){
            String ele = it.next();
            System.out.println(ele);
        }
    }
}

(2)、Collection集合的遍历–foreach

foreach:增强for循环遍历集合。
foreach是一种遍历形式,可以遍历集合或者数组
foreach遍历集合实际上是迭代器遍历的简化写法
foreach格式
for(被遍历集合或者数组中元素的类型 变量名称 : 被遍历集合或者数组){

	  }

缺点:foreach遍历无法知道遍历到了哪个元素了,因为没有索引。

package _01Collection集合的遍历方式;
import java.util.ArrayList;
import java.util.Collection;

public class CollectionDemo02 {
    public static void main(String[] args) {
        Collection<String> lists = new ArrayList<>();
        lists.add("赵敏");
        lists.add("小昭");
        lists.add("殷素素");
        lists.add("周芷若");

        for (String ele:lists) {
            System.out.println(ele);
        }

        int[] ages = new int[]{17, 18, 38, 21};
        for (int age:ages){
            System.out.println(age);
        }
    }
}

(3)、Collection集合的遍历–Lambda表达式

package _01Collection集合的遍历方式;
import java.util.ArrayList;
import java.util.Collection;

public class CollectionDemo02 {
    public static void main(String[] args) {
        Collection<String> lists = new ArrayList<>();
        lists.add("赵敏");
        lists.add("小昭");
        lists.add("殷素素");
        lists.add("周芷若");

        for (String ele:lists) {
            System.out.println(ele);
        }

        int[] ages = new int[]{17, 18, 38, 21};
        for (int age:ages){
            System.out.println(age);
        }
    }
}

(3)、Collection集合的遍历–Lambda表达式

import java.util.ArrayList;
import java.util.Collection;

public class CollectionDemo03 {
    public static void main(String[] args) {
        Collection<String> lists = new ArrayList<>();
        lists.add("赵敏");
        lists.add("小昭");
        lists.add("殷素素");
        lists.add("周芷若");
        //跟forEach遍历类似
        lists.forEach(s -> {
            System.out.println(s);
        });
        //等价于下面的
//        lists.forEach(s -> System.out.println(s));
//        lists.forEach(System.out::println);
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值