day052:Collection集合的遍历(迭代器)、增强for

6 篇文章 0 订阅
1 篇文章 0 订阅

一、集合遍历的特有方式:迭代器

1.Iterator:迭代器,集合特有的遍历方式

  • Iterator<E>iterator() :创建集合中的迭代器对象,该迭代器对象默认指向当前集合的0索引位置。用法使用集合对象.iterator()

2.Iterator中常用方法

  • boolean hasNext():判断当前位置是否有元素可以被取出
  • E next():获取当前位置元素,并将迭代器对象移向下一个索引位置

代码示例:

public class CollectionDemo_03 {
    public static void main(String[] args) {
        //先创建一个集合对象,并存入数据
        Collection<String> collection = new ArrayList<>();
        collection.add("a");
        collection.add("b");
        collection.add("c");
        collection.add("d");
        collection.add("e");

        //再调用集合对象的iterator()方法
        Iterator<String> it = collection.iterator();
        // hasNext():判断当前位置是否有元素可以被取出
        boolean result1 = it.hasNext();
        //next():取出当前位置元素,并将迭代器对象移向下一个索引位置
        String result2 = it.next();
        System.out.println(result1);
        System.out.println(result2);
        System.out.println("----------------------------------");
        //遍历集合:用while循环
        //先判断当前位置是否有元素可以取出,若有,再执行下面代码
        while (it.hasNext()) {
            System.out.print(it.next());
        }
    }
}

3.迭代器中的删除方法:

例子:删除集合中的指定元素

代码示例:

public class CollectionDemo_04 {
    public static void main(String[] args) {
        //先创建一个集合对象,并存入数据
        Collection<String> collection = new ArrayList<>();
        collection.add("a");
        collection.add("b");
        collection.add("c");
        collection.add("d");
        collection.add("e");
        Iterator<String> it = collection.iterator();

        while (it.hasNext()) {
            String s = it.next();
            //删除b元素
            if ("b".equals(s)) {
                it.remove();
            }
        }
        System.out.println(collection);
    }
}


二、增强for(快捷键:foreach)

1.什么是增强for?

  • JDK5版本后出现,其内部原理是一个Iterator迭代器

  • 只有实现Iterable接口的类才能使用迭代器和增强for

2.增强for作用是简化数组或者Collection集合的遍历

3.格式:

for(元素的数据类型 变量名数组名或集合名){

输出元素即可;

}

(注:元素的数据类型与集合或数组的数据类型一致;变量名是任意起的,这个变量是第三方变量,在增强for当中修改第三方变量的值是不会影响到集合中的元素值的;输出元素即输出所起的变量名)

代码示例:

public class CollectionDemo_05 {
    public static void main(String[] args) {
        //先创建一个集合对象,并存入数据
        Collection<String> collection = new ArrayList<>();
        collection.add("a");
        collection.add("b");
        collection.add("c");
        collection.add("d");
        collection.add("e");

        for (String s : collection) {
            System.out.println(s);
        }

    }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZQyyds:)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值