集合
单例集合:Iterable 接口 -> Collection 接口
1、List 接口
(1)ArrayList 类
(2)Vector 类
(3)LinkedList 类
2、Set 接口
(1)HashSet 类 -> LinkedHashSet 类
(2)TreeSet 类
双列集合:Map 接口
1、HashMap 类 -> LinkedHashMap 类
2、SortedMap 接口 -> TreeMap 类
3、Hashtable 类 -> Properties 类
选择集合的实现类
1、先判断储存对象:一组对象(单列)或一组键值对(双列)
2、一组对象(单列):Collection 接口
允许重复:List 接口
(1)增删多:LinkedList 类:底层维护双向链表
(2)改查多:ArrayList 类(线程不安全)、Vector 类(线程安全):底层维护 Object 类型的可变数组
不允许重复:Set接口
(1)无序:HashSet 类:底层为 HashMap 类,维护一个哈希表:数组 + 单向链表 + 红黑树
(2)排序:TreeSet 类:底层为 TreeMap 类
(3)插入、取出顺序一致:LinkedHashSet 类:底层为 LinkedHashMap,维护:数组 + 双向链表
3、一组键值对(双列):Map 接口
(1)键无序:HashMap 类,底层维护一个哈希表:数组 + 单向链表 + 红黑树
(2)键排序:TreeMap 类
(3)键插入、取出顺序一致:LinkedHashMap 类:维护:数组 + 双向链表
(4)读取文件:Properties
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战