集合的五种简单遍历方式
package com.ArrayDemo;
//先建一个学生类
public class Student {
private String name;
private int age;
public Student() {
super();
// TODO Auto-generated constructor stub
}
public Student(String name, int age) {
super();
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;
}
}
package com.ArrayDemo;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class CollectionDemo1 {
public static void main(String[] args) {
//创建集合对象
Collection<Student> c = new ArrayList<Student>();
//创建几个学生
Student s1 = new Student("高圆圆",15);
Student s2 = new Student("李冰冰",16);
Student s3 = new Student("刘诗诗",17);
Student s4 = new Student("范冰冰",18);
Student s5 = new Student("冯宝宝",19);
//添加到集合中
c.add(s1);
c.add(s2);
c.add(s3);
c.add(s4);
c.add(s5);
//第一种遍历转换为数组
Object[] obj = c.toArray();
for(int x = 0; x<obj.length ; x ++){
//向下转型
Student s = (Student)obj[x];
//无参
System.out.println(s.getName()+"---"+s.getAge());
}
//第二种迭代器
Iterator<Student> i = c.iterator();
while(i.hasNext()){
Student s = i.next();
System.out.println(s.getName()+"---"+s.getAge());
}
}
}
package com.ArrayDemo;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
public class ListDemo {
public static void main(String[] args) {
//创建List集合
List<Student> list = new ArrayList<Student>();
//创建几个学生
Student s1 = new Student("高圆圆",15);
Student s2 = new Student("李冰冰",16);
Student s3 = new Student("刘诗诗",17);
Student s4 = new Student("范冰冰",18);
Student s5 = new Student("冯宝宝",19);
//添加到集合中
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
list.add(s5);
//第三种size()+Object get(int index):普通for循环
for(int x=0; x < list.size() ; x ++){
Student s = list.get(x);
System.out.println(s.getName()+"---"+s.getAge());
}
//第四种列表迭代器ListIterator listiterator()
//获取列表迭代器
ListIterator<Student> list2 = list.listIterator();
while(list2.hasNext()){
Student s = list2.next();
System.out.println(s.getName()+"---"+s.getAge());
}
//第五种:增强for循环
for(Student s : list){
System.out.println(s.getName()+"---"+s.getAge());
}
}
}
打印结果全部都是:
高圆圆—15
李冰冰—16
刘诗诗—17
范冰冰—18
冯宝宝—19