参考代码:
public class ArrayListDemo {
/**
* @param args
*/
public static void main(String[] args) {
ArrayList list = new ArrayList();
System.out.println("任务1: 使用循环添加10个学员");
for (int i = 0; i < 10; i++) {
Student student = new Student();
student.setStuId(i + 1);
student.setStuName("名称" + (i + 1));
student.age = (int) (Math.random() * 100);
list.add(student);
}
;
System.out.println("任务2: 遍历集合中数据方法1");
studentList(list, 1);
System.out.println("任务3: 遍历集合中数据方法2");
studentList(list, 2);
System.out.println("任务4: 遍历集合中数据方法3");
studentList(list, 3);
System.out.println("任务5: 创建一个新学员,添加到集合的指定位置-五位");
Student s5 = new Student();
s5.setStuId(555);
s5.setStuName("名称555");
s5.age = (int) (Math.random() * 100);
list.add(4, s5);
studentList(list, 1);
System.out.println("任务6: 找出第四个位置到第八个位置的学员");
List listRange38 = list.subList(3, 8);
studentList(listRange38, 1);
System.out.println("任务7: 移出第八个位置上的学员");
list.remove(7);
studentList(list, 1);
System.out.println("任务8: 移出最后一个位置上的学员");
list.remove(list.size() - 1);
studentList(list, 1);
System.out.println("任务9: 将第一个位置的学员的名称改为[鳖精]");
if (list.size() > 0) {
Student s = (Student) list.get(0);
s.setStuName("鳖精");
}
studentList(list, 1);
System.out.println("任务10: 创建一个新学员,将第一个位置学员换成新创建的学员");
Student s0 = new Student();
s0.setStuId(0);
s0.setStuName("名称0");
s0.age = (int) (Math.random() * 100);
list.set(0, s0);
studentList(list, 1);
System.out.println("任务11: 清除集合中的第二个位置到第五个位置的学员");
List listRange15 = list.subList(1, 5);
listRange15.clear();
studentList(list, 1);
System.out.println("任务12: 清除集合中所有的学员");
list.clear();
System.out.println("目前的学员人数为:"+list.size());
}
ArrayList
继承了
AbstractList
;AbstractList
继承
AbstractCollection;
AbstractCollection中重写了toString()方法,所以可以直接打印。
从JDK
1.5开始,java有了自动打包,自动解包功能,Interger
对象可以直接自动转换成int,也就是说8中基本类型可以跟对应的基本类对象之间自动转换。