package collection;
import java.util.*;
public class ListTest {
public List coursesToSelect;
public ListTest()
{
this.coursesToSelect = new ArrayList();
}
public void testAdd()
{
Course cr1 = new Course("1","数据结构");
coursesToSelect.add(cr1);
Course temp = (Course) coursesToSelect.get(0);
System.out.println("添加了课程:"+temp.id+":"+temp.name);
Course cr2 = new Course("2","C语言");
coursesToSelect.add(0,cr2);
Course temp2 = (Course)coursesToSelect.get(0);
System.out.println("添加了课程:"+temp2.id+":"+temp2.name);
coursesToSelect.add(cr1);
Course temp0 = (Course) coursesToSelect.get(2);
System.out.println("添加了课程:"+temp0.id+":"+temp0.name);
Course[] course = {new Course("3","离散数学"),new Course("4","汇编语言")};
coursesToSelect.addAll(Arrays.asList(course));
Course temp3 = (Course)coursesToSelect.get(3);
Course temp4 = (Course)coursesToSelect.get(4);
System.out.println("添加了两门课程:"+temp3.id+":"+temp3.name+temp4.id+":"+temp4.name);
Course[] course2 = {new Course("5","高等数学"),new Course("6","大学英语")};
coursesToSelect.addAll(2, Arrays.asList(course2));
Course temp5 = (Course)coursesToSelect.get(2);
Course temp6 = (Course)coursesToSelect.get(3);
System.out.println("添加了两门课程:"+temp5.id+":"+temp5.name+temp6.id+":"+temp6.name);
}
public void testGet()
{
int size = coursesToSelect.size();
System.out.println("有如下课程待选:");
for(int i = 0;i < size;i++)
{
Course cr = (Course) coursesToSelect.get(i);
System.out.println("课程:"+cr.id+":"+cr.name);
}
}
public void testIterator()
{
System.out.println("有如下课程待选:(通过迭代器)");
Iterator it = coursesToSelect.iterator();
while(it.hasNext())
{
Course cr = (Course) it.next();
System.out.println("课程:"+cr.id+":"+cr.name);
}
}
public void testForEach()
{
System.out.println("有如下课程待选:(通过for each)");
for(Object obj:coursesToSelect)
{
Course cr = (Course)obj;
System.out.println("课程:"+cr.id+":"+cr.name);
}
}
public void testModify()
{
coursesToSelect.set(4,new Course("7","毛概"));
}
public void testRemove()
{
Course[] courses={(Course) coursesToSelect.get(4),(Course) coursesToSelect.get(5)};
coursesToSelect.removeAll(Arrays.asList(courses));
System.out.println("成功删除课程");
System.out.println("剩余课程:");
testForEach();
}
public void testType()
{
coursesToSelect.add("0-0?");
}
public static void main(String[] args)
{
ListTest lt = new ListTest();
lt.testAdd();
lt.testGet();
lt.testIterator();
lt.testModify();
lt.testForEach();
lt.testRemove();
}
}
package collection;
public class Course {
public String id;
public String name;
public Course(String id,String name)
{
this.id = id;
this.name = name;
}
public Course()
{
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((name == null) ? 0 : name.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (!(obj instanceof Course))
return false;
Course other = (Course) obj;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
}
}