Java遇见的一些概念问题

来源:互联网 发布:sql语句创建的表在哪 编辑:程序博客网 时间:2024/05/16 10:33

1.ArrayList、linklist、list的区别:
List是一个接口,ArrayList和LinkedList是两个实现类。

LinkedList是链表,而ArrayList是用数组实现的,它不是真正的链表,在初始化的时候它先对数组设置一个初始容量,当数组空间不够的时候,它会重新构建一个容量更大的数组,然后把先前的元素拷贝进去。
ArrayList和LinkedList本质上的区别就是数组和列表这两种数据结构的区别。

ArrayList:缺点:内存使用量要大一些,添加删除元素效率较低。元素随机访问的效率较高。
LinkedList:相反。

ArrayList 多用于查询.
LinkedList(链表) 多用于插入和删除.

附注:链表
线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的)。对于每个节点来说,除了存储其本身的信息(数据值)之外,还需存储一个指示其直接后继的结点的引用。存储数据元素信息的部分称为数据域 ,存储直接后继结点引用的部分成为指针域 。
优点——增、删速度快。
缺点——不能随机访问。

0 0
原创粉丝点击