Vector和ArrayList同:
//创建一个Vector的集合
Vector v=new Vector();
//循环添加对象
for (int i = 0; i < 10; i++) {
//添加对象
v.add("a"+i);
//输出对象
System.out.println(v.get(i));
}
输出结果:
//创建一个List集合
List list = new ArrayList();
//循环添加对象
for (int i = 0; i < 11; i++) {
//添加对象
list.add("a"+i);
//输出对象
System.out.println(list.get(i));
}
输出结果:
总结:Vector和ArrayList都是有序的集合。
反射类的属性可以调用print的方法
//Vector和ArrayList异:
//反射类的属性
static void print(List arrayList)throws Exception{
Class c=arrayList.getClass();
Field elementDataField=c.getDeclaredField("elementData");
elementDataField.setAccessible(true);
Object[] arr=(Object[]) elementDataField.get(arrayList);
System.out.println("elementData.length="+arr.length);
}
//创建一个List集合
List list = new ArrayList();
//循环添加对象
for (int i = 0; i < 11; i++) {
//添加对象
list.add("a"+i);
//查看集合长度
print(list);
}
//创建一个Vector的集合
Vector v=new Vector();
//循环添加对象
for (int i = 0; i < 11; i++) {
//添加对象
v.add("a"+i);
//输出对象
print(v);
}
总结:即Vector增长原来的一倍,ArrayList增加原来的0.5倍。