Java基础遇到的问题
集合ArrayList有什么特点?底层是用什么实现的?
特点:查询效率高,增删效率低。底层:使用数组实现的存储。
查询效率为什么变快了?
因为底层是使用数组实现的存储,数组是连续的,有下标,有下标了就可以根据下标查询一次命中,时间复杂度就变为0(1),查询就变快了。
为什么增删效率低?
因为定义数组的时候需要定义其长度,不灵活,不方便数据的增,删。
集合ArrayList ,数组,list有什么区别?
数组在存储中是连续储存的,大小固定,无法改变。
ArrayList的大小是根据存储数据来进行动态扩容和收缩的。所以我们在生命ArrayList对象时候不需要定义长度大小,因为它继承了Ilist接口,很方便的进行增加,删除,修改。
list也继承了llist接口,最关键的区别是我们在声明list集合时候,我们需要声明list集合数据内的对象类型
数组有什么缺点呢?
比如:大小固定,无法改变,那这个时候集合的优点就出来了:可以动态扩容。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了