集合的实现类的存储结构
集合的实现类的存储结构
List
集合的常用实现类有ArrayList
和LinkedList
,其中,ArrayList
是使用数组结构来存储的,数组结构要求数据在内存中必须是连续的,存在查询效率高,但修改效率低的问题;而LinkedList
是使用链表结构来存储的,存在查询效率低,但修改效率高的问题!
Set
集合的常用实现类有HashSet
,其数据是完全散列的,而LinkedHashSet
也是使用链表结构来存储数据的!
问题:java.util.Set 有没有像 list 一样的get方法吧?
答案是没有。
List特点:元素有放入顺序,元素可重复。
Set特点:元素无放入顺序,元素不可重复。
List的get方法需要下标,其实也就是放入顺序,由于Set没有放入顺序,所以这应该就是没有给Set设计get方法的原因。
扩展:在Set中的位置是由元素的HashCode决定的,位置其实是固定的。要取Set的值,一般是用iterator() 方法获取迭代器进行操作,也可以用toArray()方法转成数组来操作。
分类:
集合
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效