1. 程式人生 > >集合例子:學生選課

集合例子:學生選課

lis color iterator next arr span 大學 his ext

利用集合存儲課程信息:

1.Course類

package com.collection;

public class Course {
    public String id;
    public String name;
    public Course(String id,String name)
    {
        this.id=id;
        this.name=name;
    }

}

2.ListTest類

package com.collection;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator; import java.util.List; /** * 備選課程類 */ public class ListTest { //List用於存放備選課程 public List CourseToSelect; public ListTest(){ this.CourseToSelect = new ArrayList(); } //用於往CourseToSelect添加備選課程 public void TestAdd(){ //創建一個課程對象,並通過調用add方法,添加到備選課程List中
Course c1 = new Course("1","數據結構"); CourseToSelect.add(c1); Course temp = (Course) CourseToSelect.get(0); System.out.println("添加了課程:"+temp.id+"_"+temp.name); Course c2 = new Course("2","c語言"); CourseToSelect.add(0, c2); Course temp2
= (Course) CourseToSelect.get(0); System.out.println("添加了課程:"+temp2.id+"_"+temp2.name); Course[] course = {new Course("3","離散數學"),new Course("4","匯編語言")}; CourseToSelect.addAll(Arrays.asList(course)); Course temp3 = (Course) CourseToSelect.get(2); Course temp4 = (Course) CourseToSelect.get(3); System.out.println("添加了兩門課程:"+temp3.id+"_"+temp3.name+";"+temp4.id+"_"+temp4.name); CourseToSelect.add(c1); Course temp0 = (Course) CourseToSelect.get(0); System.out.println("添加了課程:"+temp0.id+"_"+temp0.name); Course[] course2 = {new Course("5","高等數學"),new Course("6","大學英語")}; CourseToSelect.addAll(2, Arrays.asList(course2)); Course temp5 = (Course) CourseToSelect.get(2); Course temp6 = (Course) CourseToSelect.get(3); System.out.println("添加了兩門課程:"+temp5.id+"_"+temp5.name+";"+temp6.id+"_"+temp6.name); } //取得List中元素的方法 public void testGet(){ int size = CourseToSelect.size(); System.out.println("有如下課程待選:"); for(int i = 0;i<size;i++) { Course cr = (Course) CourseToSelect.get(i); System.out.println("課程:"+cr.id+":"+cr.name); } } //通過叠代器遍歷List中的元素 public void testIterator(){ //通過集合的iterator方法,取得叠代器的實例; Iterator it = CourseToSelect.iterator(); System.out.println("有如下課程待選(通過叠代器取得):"); while(it.hasNext()){ Course cr2 = (Course) it.next(); System.out.println("課程:"+cr2.id+":"+cr2.name); } } //通過for each遍歷list中的元素 public void testForEach(){ System.out.println("有如下課程待選(通過for each取得):"); for(Object obj:CourseToSelect){ Course cr = (Course) obj; System.out.println("課程:"+cr.id+":"+cr.name); } } //修改List中的元素 public void testModify(){ CourseToSelect.set(6, new Course("7","毛概")); } //刪除List中的元素 public void testRemove(){ /*Course cr = (Course) CourseToSelect.get(6); System.out.println("課程:"+cr.id+":"+cr.name+"我即將被刪除"); CourseToSelect.remove(cr); //刪除具體的元素*/ //CourseToSelect.remove(4); //刪除索引4位置上的元素 Course[] courses = {(Course)CourseToSelect.get(4),(Course)CourseToSelect.get(5)}; CourseToSelect.removeAll(Arrays.asList(courses)); System.out.println("成功被刪除"); testForEach(); } public static void main(String[] args){ ListTest lt = new ListTest(); lt.TestAdd(); lt.testGet(); lt.testIterator(); lt.testForEach(); lt.testModify(); lt.testForEach(); lt.testRemove(); } }

集合例子:學生選課