arraylist和数组谁的效率高,java list和array的区别

  arraylist和数组谁的效率高,java list和array的区别

  下面的java快速入门专栏介绍了ArrayList和一般数组之间的区别。

  什么是ArrayList?

  ArrayList的实现原理其实就是array(动态数组)。

  动态数组与一般数组有什么区别?

  与Java中的数组相比,ArrayList的容量可以动态增加。

  ArrayList效率怎么样?

  ArrayList不是线程安全的,所以效率更高,但是只能在单线程环境下使用。

  ArrayList主要继承哪些类实现了哪些接口?

  ArrayList主要继承AbstractList类,实现List、RandomAccess、Cloneable、Serializable等接口。

  公共类ArrayListE扩展AbstractListE

  实现了listen,random access,uncleanable,java.io.serializable随机访问是指具有快速访问的能力,ArrayList可以按照下标访问元素,时间复杂度为O (1) [1]。ArrayList占用的是连续的内存空间,因为它的底层机制是数组,它的长度就是数组的大小。所以它也有数组的缺点,空间效率不高,但也有它的优点,即查询速度快,时间效率快。

  ArrayList的常量与变量有哪些?

  //序列ID

  private static final long serial version uid=8683452581122892189 l;

  //ArrayList默认初始容量大小

  private static final int DEFAULT _ CAPACITY=10;

  //空对象数组,用于共享空实例的空数组实例

  私有静态最终对象[]EMPTY _ element data={ };

  //空的对象数组,如果用默认的构造函数创建,默认的对象内容就是这个值

  私有静态最终对象[]default capacity _ EMPTY _ element data={ };

  //存储当前数据,不参与序列化。

  瞬态对象[]element data;//非私有以简化嵌套类访问

  //列表大小

  私有int大小;当集合中的元素超过数组的指定长度时,就会对数组进行扩展,这就是ArrayList存储操作缓慢的原因,尤其是当数据量较大时,每次扩展所花费的时间会越来越多。java中的ArrayList和一般的数组有什么区别?效率如何?更多详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: