Java 中的集合
Java 中的集合层次结构由分组元素/对象组成,其中每个类都有子类和方法。它不接受原始类型,但“数组”类允许包含相同类型的多个同构元素,接受原始类型。
集合框架方法存在于 JDK(Java 开发工具包)内的 java.util 包中。主要接口有List、Set、Map。
泛型
对泛型类型使用符号 (菱形)。最常见的类型参数包括 E(Element)、K(Key)、N(Number)、T(Type)、V(Value)。
比较器 x 可比较
它们用于订购集合。 Comparable 提供单个排序序列,影响原始类,而 Comparator 提供多个序列,而不修改原始类。
列表 x 集合 x 地图
- 列表:允许重复元素,保持插入顺序。实现示例有 ArrayList 和 LinkedList。
- Set:不允许重复元素。
- HashSet 使用哈希表
- TreeSet 使用平衡二叉树
- LinkedHashSet 维护插入顺序
- Map:将键映射到值。
- HashMap 使用哈希表
- TreeMap 使用平衡二叉树
- LinkedHashMap 维护插入顺序
实现/类示例:
- ArrayList:将元素存储在可调整大小的数组中,允许通过索引快速访问。
- LinkedList:将元素存储在双向链表中,对于开头/结尾的添加/删除非常有效。
- HashSet:将元素存储在哈希表中,没有特定的顺序。
- TreeSet:将元素存储在平衡二叉树中,保持升序。
- LinkedHashSet:使用哈希表和双向链表维护插入顺序。
- HashMap:使用哈希表将键映射到值,没有特定的顺序。
观察结果:
添加到 Set 的第一个元素是第一个返回的。
在 Map 中,put 方法更新或创建键值对。
Map接口在创建集合之前不需要创建类,直接通过key即可进行查找,省去了for循环。
旧实现的示例包括 Vector(同步)和 HashTable(同步且不允许空值)。
以上就是Java 中的集合的详细内容,更多请关注其它相关文章!