集合框架Collection之list接口
2016-09-29 15:04
357 查看
list三种实现类的比较
ArrayList Vector LinkedList区别
存储方式
1.ArrayList 和Vector是采用数组方式存储数据,
Arraylist的内存结构是数组,当超出数组大小时创建一个新的数组,吧原数组中元素拷贝过去。其本质是顺序存储的线性表,插入和删除操作会引发后续元素移动,效率低,但是随机访问效率高
vector(同步)采用的是synchronized方法(线程安全)所以性能上比ArrayList要差
2.Vector缺省情况下自动增长原来一倍的数组长度,ArrayList是原来的50%
3.LinkedList使用双向链表实现存储,
LinkedList的内存结构是用双向链表存储的,链式存储结构插入和删除效率高,不需要移动。但是随机访问效率低,需要从头开始向后依次访问
性能上:
vector(同步)采用的是synchronized方法(线程安全)所以性能上比ArrayList要差
LinkedList(非同步)没有同步方法
ArrayList(非同步)没有同步方法
我们在来看看各个实现类的常用操作
Vector实现类
ArrayList Vector LinkedList区别
存储方式
1.ArrayList 和Vector是采用数组方式存储数据,
Arraylist的内存结构是数组,当超出数组大小时创建一个新的数组,吧原数组中元素拷贝过去。其本质是顺序存储的线性表,插入和删除操作会引发后续元素移动,效率低,但是随机访问效率高
vector(同步)采用的是synchronized方法(线程安全)所以性能上比ArrayList要差
2.Vector缺省情况下自动增长原来一倍的数组长度,ArrayList是原来的50%
3.LinkedList使用双向链表实现存储,
LinkedList的内存结构是用双向链表存储的,链式存储结构插入和删除效率高,不需要移动。但是随机访问效率低,需要从头开始向后依次访问
性能上:
vector(同步)采用的是synchronized方法(线程安全)所以性能上比ArrayList要差
LinkedList(非同步)没有同步方法
ArrayList(非同步)没有同步方法
我们在来看看各个实现类的常用操作
Vector实现类
//Vector的crud import java.util.List; import java.util.Vector; public class VectorDemo { public static void main(String[] args) { List<A> list = new Vector<A>() ; A a1=new A(1,"haha"); A a2=new A(2,"haha"); // 向列表的尾部追加指定的元素 list.add(a1); list.add(a2); //修改 list.set(1, a1); //删除 // list.remove(a2); //获取指定对象 System.out.println(list.get(0).toString()); //遍历 for (A a : list) { System.out.println(a.toString()); } } } class A{ int i; String b; public A(int j, String string) { i=j; b=string; } @Override public String toString() { return "a [i=" + i + ", b=" + b + "]"; } }
相关文章推荐
- 08.集合框架(一)【集合概述】【接口Collection,Iterator,List,ListIterator】【类LinkedList,ArrayList】
- 黑马程序员-集合框架Collection List Set 接口的简单介绍
- 黑马程序员_Java第14天知识总结_集合类(集合框架)_Collection_迭代器_List_Set_HashSet
- 集合框架之List接口
- 集合框架总结——Collection、Iterator、List、Set、Map
- 黑马程序员——Java基础——集合类、Collection、List体系、集合框架LinkedList操作等
- 集合框架_Collection_List
- 集合框架之collection中接口的用法
- 集合框架之List接口
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 黑马程序员——集合框架collection集合接口及List子类
- 黑马程序员-集合类Collection之List接口
- 黑马程序员_学习笔记:9) 集合框架1:Collection(List、Set)、Iterator、List(ArrayList、LinkedList、Vector)
- 集合框架1(Collection的共性方法,迭代器,ArrayList,LinkedList,Vector)
- 【javaSE】Collection框架及List集合
- 黑马程序员_JAVA学习日记_JAVA中API:集合框架1(Collection,List,Set及其子类和迭代器的应用)
- JAVA集合 Set(集)、List(列表)、Map(映射)、Collection(接口)
- java中的集合框架Collection 接口 Map接口的问题
- 黑马程序员_java_集合框架_Collection_List_Set_泛型
- 黑马程序员--Java学习日记之集合(collection类与list接口)及泛型概述