集合的实现类的存储结构

集合的实现类的存储结构

List集合的常用实现类有ArrayListLinkedList,其中,ArrayList是使用数组结构来存储的,数组结构要求数据在内存中必须是连续的,存在查询效率高,但修改效率低的问题;而LinkedList是使用链表结构来存储的,存在查询效率低,但修改效率高的问题!

Set集合的常用实现类有HashSet,其数据是完全散列的,而LinkedHashSet也是使用链表结构来存储数据的!

问题:java.util.Set 有没有像 list 一样的get方法吧?

答案是没有。

List特点:元素有放入顺序,元素可重复。
Set特点:元素无放入顺序,元素不可重复。

List的get方法需要下标,其实也就是放入顺序,由于Set没有放入顺序,所以这应该就是没有给Set设计get方法的原因。

扩展:在Set中的位置是由元素的HashCode决定的,位置其实是固定的。要取Set的值,一般是用iterator() 方法获取迭代器进行操作,也可以用toArray()方法转成数组来操作。

posted @   Charles博客  阅读(67)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效
点击右上角即可分享
微信分享提示