我是靠谱客的博主 儒雅灰狼,最近开发中收集的这篇文章主要介绍【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的面试题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复