学到的遍历数组方式有点多下面就总结几种遍历数组的方式,如:
- for循环遍历;
- foreach遍历;
- Iterator 迭代器while 遍历;
- Iterator迭代器for遍历;
下面用这四种遍历来遍历一个list集合:
创建一个list 集合,如:
第一种:for循环遍历;
一个用for ,一个while,但两者都差不多,典型就是换汤不换药那种;
第二种:foreach遍历;
Java5 引入了一种主要用于数组的增强型for循环。但需要注意一点:Java增强型for循环只能取值,不能赋值;
第三种:Iterator 迭代器while 遍历;
直接输出iterator.next(); 也是可以的;它本身就是字符串类型,再转换成字符串也一样是字符串;
第四种:Iterator迭代器for遍历;
下面是运行结果:
因为上面的循环结果都是一样的,这里就不一一列出来;
注意:
- 迭代器的类是import java.util.Iterator;不要应用错了;
- foreach遍历是增强型for循环,主要用于数组,也可以用于集合,只是比较少;一般都用迭代器去遍历集合;
代码:
public static void main(String[] args) {
List<String> list=new ArrayList<String>();
list.add("小黄");
list.add("小红");
list.add("小白");
list.add("小绿");
list.add("小黑");
//while循环
int e=0;
while (e < list.size()) {
System.out.println(list.get(e));
e++;
}
//for循环
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
//foreach循环(for循环增强)
for(String str: list){
System.out.println(str);
list.add("小");
}
//while迭代器
Iterator<String> iterator= list.iterator();
while (iterator.hasNext()) {// iterator.hasNext()判断是否有下一个元素
String string = (String) iterator.next();// iterator.next()获取下一个
System.out.println(string);
}
//for迭代器
for (Iterator<String> iterator2 = list.iterator(); iterator2.hasNext();) {
String string = iterator2.next();
System.out.println(string);
}
}