1.特点:插入,删除效率高
2.由于ArrayList采用了和数组相同的存储方式,在内存中分配连续的控件,再添加和删除非尾部元素时,会导致后面所有元素的移动,性能低下,所以在插入,删除操作比较频繁时,可以考虑使用LinkedList来提高效率
3.LinkedList集合类提供了List的所有方法之外的额外方法:
在集合的头部或尾部添加,获取,和删除狗狗对象的代码实例:
public class Test11 {
public static void main(String[] args) {
//创建4个dog对象
Dog ououDog=new Dog("欧欧","雪纳瑞");
Dog yayaDog=new Dog("亚亚","拉布拉多");
Dog meimeiDog=new Dog("美美","雪纳瑞");
Dog feifeiDog=new Dog("菲菲","拉布拉多");
//创建LinkedList集合对象把4个狗狗对象放入其中
LinkedList dogs=new LinkedList();
dogs.add(ououDog);
dogs.add(yayaDog);
dogs.add(meimeiDog);
dogs.add(feifeiDog);
//查看集合中第一条狗狗的信息
Dog dogFrist=(Dog)dogs.getFirst();
System.out.println(dogFirst.getName());
//查看集合中最后一条狗狗的信息
Dog dogLast =(Dog)dogs.getLast();
System.out.println(dogLast.getName());
//删除集合中第一条和最后一条狗狗
dogs.removeFirst();
dogs.removeLast();
//显示删除部分狗狗后集合中各条狗狗信息
System.out.prinltn("还有"+dogs.size()+"狗狗");
for(int i=0;i<dogs.size();i++)
{
Dog dog=(Dog)dogs.get(i);
System.out.println(dog.getName());
}
}
}