您的位置:首页 > 编程语言 > Java开发

java的集合嵌套及三种遍历

2017-01-08 11:22 387 查看
package exercise03_jdknews;

import java.util.ArrayList;
import java.util.Iterator;

/**
* 集合的嵌套 每个班级的学生 ArrayList<Student> 多个班级 ArrayList<ArrayList<Student>>
*
* @author lgt
*
*/
public class CollectionNest {
public static void main(String[] args) {
// 创建大集合
ArrayList<ArrayList<Student>> bigList = new ArrayList<ArrayList<Student>>();

// 创建第一个班级的集合、学生
ArrayList<Student> list1 = new ArrayList<Student>();
Student s1 = new Student("hello1", 223);
Student s2 = new Student("hello5", 93);
Student s3 = new Student("hello23", 123);
Student s4 = new Student("hello123", 999);
Student s5 = new Student("hello222", 1992);
//添加到第一个班级集合
list1.add(s1);
list1.add(s2);
list1.add(s3);
list1.add(s4);
list1.add(s5);

//添加班级到年级集合
bigList.add(list1);

// 创建第二个班级的集合、学生
ArrayList<Student> list2 = new ArrayList<Student>();
Student ss1 = new Student("java1", 1511);
Student ss2 = new Student("java2", 1566);
Student ss3 = new Student("java3", 1755);
Student ss4 = new Student("java4", 1833);
Student ss5 = new Student("java5", 1960);
// 添加到第二个班级集合
list2.add(ss1);
list2.add(ss2);
list2.add(ss3);
list2.add(ss4);
list2.add(ss5);

//添加到年级集合
bigList.add(list2);

// 创建第一个班级的集合、学生
ArrayList<Student> list3 = new ArrayList<Student>();
Student sss1 = new Student("world10", 1990);
Student sss2 = new Student("world12", 1990);
Student sss3 = new Student("world15", 1995);
Student sss4 = new Student("world19", 1998);
Student sss5 = new Student("world20", 2006);
// 添加到集合
list3.add(sss1);
list3.add(sss2);
list3.add(sss3);
list3.add(sss4);
list3.add(sss5);

//添加第三班级到年级集合
bigList.add(list3);

//遍历年级方式1 迭代器
Iterator<ArrayList<Student>> it = bigList.iterator();
int count1 = 1;
while(it.hasNext()){
System.out.println("班级" + count1);
Iterator<Student> itt = it.next().iterator();
while(itt.hasNext()){
Student s = itt.next();
s.show();
}
count1++;
}
System.out.println("----------------------");

//遍历年级方式2 for
int count2 = 1;
for(int i = 0; i < bigList.size(); i++){
System.out.println("班级" + count2);
for(int j = 0; j < bigList.get(i).size(); j++){
Student s = bigList.get(i).get(j);
s.show();
}
count2++;
}
System.out.println("----------------------");

//遍历方式3 增强for
int count3 = 1;
for(ArrayList<Student> i : bigList){
System.out.println("班级" + count3);
for(Student s : i){
s.show();
}
count3++;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java