演示的是List的三种遍历方法。Set,Map虽然有差别,但是大体还是相同的。
import java.util.ArrayList;
import java.util.Iterator;
public static void main(String[] args) {
ArrayList<String> arr = new ArrayList<>();
arr.add("1");
arr.add("2");
arr.add("3");
// fun1(arr);
// fun2(arr);
fun3(arr);
}
//普通for循环演示
public static void fun1(ArrayList<String> arr){
for(int i = 0; i < arr.size(); i++){ //arr.size()获取ArrayLisat的元素个数
System.out.println(arr.get(i)); //get(int index)获取对应下标的元素值
}
}
//foreach演示
public static void fun2(ArrayList<String> arr){
for(String str : arr){
System.out.println(str); //可以看出这个比较方便
}
}
//Iterator演示
public static void fun3(ArrayList<String> arr){
Iterator it = arr.iterator(); //每个集合对象都有iterator方法
while(it.hasNext()){ //Iterator对象的判断是否有下一个元素的方法
System.out.println(it.next()); //Iterator对象获取下一个元素的方法
// it.remove(); //如果有需要,可以使用remove来删除当前迭代的位置
/*如果在遍历的时候删除集合中的元素,for循环和foreach循环都会出现异常的
* 异常的意思是:不能再遍历集合的时候去操作元素对象,(比如:删除元素)
* 而使用Iterator遍历时,使用remove方法是不会有异常产生的。
* 这也是Iterator遍历的特点
*/
}
}