Java Collection集合的遍历问题

前言:

Java中的Collection通常是一块很重要的内容,本篇文章主要介绍了Collection里面的常用方法和遍历问题。


常用方法:

 方法演示:

import java.util.*;

public class Main {
    public static void main(String[] args) {
        //首先通过多态的方法创建一个集合对象
        Collection<String> c=new ArrayList<>();

        //1.add方法向集合里添加三个元素
        c.add("a");
        c.add("b");
        c.add("c");
        //展示c里面的元素
        System.out.println(c);

        //6.c集合里的元素个数输出为3个
        System.out.println(c.size());

        //2.c.remove()方法,移除a元素
        c.remove("a");
        System.out.println(c);

        //3.void clear()
        c.clear();
        System.out.println(c);

        //这时候c集合里面已经没有任何元素
        //4.c.contains("a")判断c里面是否有a元素,结果为false
        System.out.println(c.contains("a"));

        //5. c.isEmpty()判断c集合是否为空
        System.out.println(c.isEmpty());
    }
}

运行结果:


集合遍历问题

可以看到,在上面集合的常用方法里面并没有对集合元素里面一个个遍历输出的方法,那么我们如果想要一个个得到集合里面的元素,就需要使用迭代器。

Iterator:迭代器,集合专用遍历工具,依赖于集合存在的。

迭代器是一个内部类,也是内部类使用很常见的一种方法

方法:

E next():获取集合里的下一个元素。

boolean hasNext():如果迭代有更多的元素,返回true

如上图所示

当集合里的元素只有三个,而你却遍历了四次
这时候就会抛出一个异常java.util.NoSuchElementException
提示你,你请求的元素不存在


解决方案:

这时候我们就可以使用上面提到的迭代器的方法进行遍历

boolean hasNext():如果迭代有更多的元素,返回true

import java.util.*;

public class Main {
    public static void main(String[] args) {
        //首先通过多态的方法创建一个集合对象
        Collection<String> c=new ArrayList<>();

        //add方法向集合里添加三个元素
        c.add("a");
        c.add("b");
        c.add("c");

        //获得c集合的迭代器
        Iterator <String> it =c.iterator();
        //判断迭代是否有下一个元素
        while(it.hasNext())
        {
            String s=it.next();
            System.out.println(s);
        }
    }
}

运行结果:

 在遍历的操作里面,用了String s=it.Next();

而不是直接System.out.println(it.Next());

这样做的好处就是你可以在输出之前对你要遍历的元素进行处理。而不是直接输出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值