Java遇见的一些概念问题

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

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

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

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值