Java中ArrayList和LinkedList差异ITeye - 众发娱乐

Java中ArrayList和LinkedList差异ITeye

2019年04月01日12时05分51秒 | 作者: 敬曦 | 标签: 依据,优于,以下 | 浏览: 1685

在面试进程中有很多会问到ArrayList和LinkedList的差异,故特别下来研讨了一番。
1.ArrayList的底层是依据动态数据完成,而LinkedList是归于依据链表的结构
2.ArrayList在获取数据是优于LinkedList,LinkedList是适当的缓慢,原因有以下:
ArrayList是依据下标直接取值,而LinkedList要移动指针查找。
3.至于调集中的add和remove,在ArrayList和LinkedList要看数据量,若是数据量不大,他两功能差不多,假如数据超大,那么ArrayList优于LinkedList

以下为测验代码:

public class demo {
  public static final  int n=20000;
  public static void  main(String arg[]){
  List list=new ArrayList();
  List list1=new LinkedList();
  System.out.println("array"+demo.adddemo(list));
  System.out.println("linkList"+demo.adddemo(list1));

  System.out.println("arrayget"+demo.getList(list));
  System.out.println("linkListget"+demo.getList(list1));


  }

  public  static  long getList(List list){
  long statime=System.currentTimeMillis();
  for(int i=0;i list.size();i++){
  int j= Collections.binarySearch(list,i);
  }
  return System.currentTimeMillis()-statime;
  }

  public static  long adddemo(List list){
  long starttime=System.currentTimeMillis();
  for(int i=0;i i++){
  list.add(i);
  }
  return System.currentTimeMillis()-starttime;
  }
}
版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表众发娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章