我是靠谱客的博主 儒雅灰狼,最近开发中收集的这篇文章主要介绍【Java笔记】Iterator与foreach循环遍历集合Iterator迭代器foreach循环 有关foreach的面试题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

Iterator迭代器

foreach循环 

有关foreach的面试题


Iterator迭代器

Iterator 对象称为迭代器,主要用于遍历 Collection 集合中的元素

Iterator 仅用于遍历集合,其本身不提供承装对象的能力。如果需要创建 Iterator 对象,则必须有一个被迭代的集合

内部方法:hasNext()和 next()

import org.junit.Test;
import java.util.*;

public class CollectionTest {
    @Test
    public void test1(){
        Collection coll = new ArrayList();
        coll.add("AA");
        coll.add(123);
        coll.add(false);
        coll.add("DD");
        Iterator iterator = coll.iterator();
//        for (int i = 0; i < coll.size(); i++) {
//            System.out.println(iterator.next());
//        }
        while (iterator.hasNext()){
            System.out.println(iterator.next());
        }
    }
}

>>> AA
    123
    false
    DD

foreach循环 

JDK 5.0 新增了 foreach 循环,用于遍历集合、数组

import org.junit.Test;
import java.util.*;

public class CollectionTest {
    @Test
    public void test1() {
        Collection coll = new ArrayList();
        coll.add("AA");
        coll.add(123);
        coll.add(false);
        coll.add("DD");
        Iterator iterator = coll.iterator();
        //for(集合元素的类型 局部变量 : 集合对象) 内部仍然使用了迭代器
        for(Object obj : coll){
            System.out.println(obj);
        }
        System.out.println("**********");
        int[] arr = new int[]{1,2,3,4,5};
        //for(数组元素的类型 局部变量 : 数组对象)
        for (int i : arr){
            System.out.println(i);
        }
    }
}

>>> AA
    123
    false
    DD
    **********
    1
    2
    3
    4
    5

有关foreach的面试题

import org.junit.Test;

public class foreachTest {
    @Test
    public void test(){
        String[] arr = new String[]{"AA","AA","AA"};
        for (String s : arr){
            s = "BB";
        }
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }
    }
}

>>> AA
    AA
    AA

为什么没有都赋值为 “BB” 呢,是因为这时相当于把 arr [i] 赋值给 s,然后 s = “BB”,我们只修改了 s 的值,并没有对 arr [i] 做操作,所以集合的值并没有改变

最后

以上就是儒雅灰狼为你收集整理的【Java笔记】Iterator与foreach循环遍历集合Iterator迭代器foreach循环 有关foreach的面试题的全部内容,希望文章能够帮你解决【Java笔记】Iterator与foreach循环遍历集合Iterator迭代器foreach循环 有关foreach的面试题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部