百木园-与人分享,
就是让自己快乐。

Java基础遇到的问题

集合ArrayList有什么特点?底层是用什么实现的?

     特点:查询效率高,增删效率低。底层:使用数组实现的存储。

查询效率为什么变快了? 

     因为底层是使用数组实现的存储,数组是连续的,有下标,有下标了就可以根据下标查询一次命中,时间复杂度就变为0(1),查询就变快了。

为什么增删效率低?       

     因为定义数组的时候需要定义其长度,不灵活,不方便数据的增,删。

集合ArrayList ,数组,list有什么区别?

     数组在存储中是连续储存的,大小固定,无法改变。

     ArrayList的大小是根据存储数据来进行动态扩容和收缩的。所以我们在生命ArrayList对象时候不需要定义长度大小,因为它继承了Ilist接口,很方便的进行增加,删除,修改。

     list也继承了llist接口,最关键的区别是我们在声明list集合时候,我们需要声明list集合数据内的对象类型

数组有什么缺点呢?

     比如:大小固定,无法改变,那这个时候集合的优点就出来了:可以动态扩容。


来源:https://www.cnblogs.com/XiaoYeH/p/15993253.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » Java基础遇到的问题

相关推荐

  • 暂无文章