一.List
在说数组实现和链表实现之前,先说说它们的”父亲” — List
List是可以有重复的数据存储的,按照顺序存储的,有下标.
List的特有方法:
1.添加 – add(int num,Object obj)
2.替换 – set(int num,Object obj)
3.获取 – get(int num)
4.删除 – remove(int num)
代码测试:
public static void fun1(){
List list = new List();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
// 1.添加 -- add
// 想指定的索引处添加元素(记住不能越界数组)
list.add(1,"ly");
// 2.替换 -- set
// 替换指定的索引处的元素(不能越界 不能替换超出集合长度的索引处的元素)
list.set(3."yl");
// 3.获取 -- get
// 获取指定下标对应的元素(不能越界 不能获取超出集合长度的索引处的元素)
Object obj = list.get(2);
System.out.println("obj");
// 4.可以利用get方法遍历集合
for(int i= 0; i < list.size(); i++){
System.out.println(list.get(i));
}
// 5.删除 -- remove
// 按照索引删除索引出的元素
list.remove(2);
// 6.利用迭代器遍历数组
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
//使用迭代器遍历的时候 next只能调用一次
System.out.print(iterator.next() + " ");
}
}
结果为:
二.数组实现与链表实现
1.先说一个比较特殊的数组表现 – Vector
Vector是一个1.0版本数组实现的类,在1.2版本被ArrayList替代
Vector有特殊的遍历的方法 – 快速枚举遍历
Vector vector = new Vector();
vector.addElement("a");
vector.addElement("b"</