在输出很多的ArrayList的元素时,用普通的for循环太麻烦,因此本文介绍三种遍历ArrayList的方法

package test;

public class Student {
        private String name;
        private int age;
    public Student() {
        // TODO Auto-generated constructor stub
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public Student(String name, int age) {
        super();
        this.name = name;
        this.age = age;
    }

}

用Student类来定义学生,有两个属性,姓名,年龄,以及get,set方法,还有构造方法。

package test;

import java.util.ArrayList;
import java.util.Iterator;
import test.Student;

public class test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        ArrayList<Student> list = new ArrayList<Student>();
        list.add(new Student("张三", 10));
        list.add(new Student("李四", 10));
        list.add(new Student("王五", 10));

//    第一种遍历方法
        System.out.println("第一种遍历方法普通for循环");
        for (int i = 0; i < list.size(); i++) {
            Student s = list.get(i);
            System.out.println("姓名:" + s.getName() + "年龄" + s.getAge());
        }

//    第二种遍历方法
        System.out.println("第二种遍历方法iterator");
        Iterator<Student> it = list.iterator();// 返回一个迭代器
        while (it.hasNext()) {
            Student s = it.next(); // 返回迭代器的下一个元素
            System.out.println("姓名:" + s.getName() + "年龄" + s.getAge());
        }
//        第三种遍历方法    

        System.out.println("第三种遍历方法foreach");
        for (Student s : list) {
            System.out.println("姓名:" + s.getName() + "年龄" + s.getAge());
        }

    }

}

 

 

 通过运行结果发现,结果一模一样,但是看代码的话,第三种代码比前两种要简单得多,因此如果熟练要尽可能的用简单的方式