-
案例需求
创建一个存储学生对象的集合,存储3个学生对象,使用程序实现在控制台遍历该集合
在很多时候我们都是需要自己对集合进行遍历,这次讲一下对集合进行遍历的三种方式,以及在什么情况下应该使用哪一种遍历的方式。
这边使用List集合进行
首先定义一个学生类:
public class Student {
private String name;
private int age;
public Student() {
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
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 static void main(String[] args) {
//创建List集合对象
List<Student> list = new ArrayList<Student>();
//创建学生对象
Student s1 = new Student("成龙", 30);
Student s2 = new Student("李连杰", 35);
Student s3 = new Student("李小龙", 33);
//把学生添加到集合
list.add(s1);
list.add(s2);
list.add(s3);
//迭代器:集合特有的遍历方式
Iterator<Student> it = list.iterator();
while (it.hasNext()) {
Student s = it.next();
System.out.println(s.getName()+","+s.getAge());
}
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("--------");
//增强for:最方便的遍历方式,如果只是简单的遍历可以选择这种遍历方式
for(Student s : list) {
System.out.println(s.getName()+","+s.getAge());
}
}