![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java集合
文章平均质量分 85
((٩(//̀/́/)۶))
这个作者很懒,什么都没留下…
展开
-
TreeMap
说明基于红黑树的 NavigableMap 实现。Map根据其键的 Comparable natural ordering 进行排序,或者根据Map创建时提供的 Comparator 进行排序,具体取决于使用的构造函数。 此实现为 containsKey、 get、 put 和 remove操作提供了保证的 log(n) 时间成本。算法改编自 Cormen、Leiserson 和 Rivest 的算法简介。 请注意,树形映射维护的排序,就像任何排序映射一样,无论是否提供显式比较器,必须与原创 2021-09-05 16:05:45 · 174 阅读 · 0 评论 -
Map集合
说明将键映射到值的对象。Map不能包含重复的键;每个键最多可以映射到一个值。这个接口取代了 Dictionary 类,后者是一个完全抽象的类而不是一个接口。 Map 接口提供三个集合视图,允许将Map的内容视为一组键、一组值或一组键值映射。地图的 order 被定义为Map集合视图上的迭代器返回其元素的顺序。一些Map实现,比如 TreeMap 类,对它们的顺序做出了具体的保证;其他的,比如 HashMap 类没有。 注意:如果将可变对象用作映射键,则必须非常小心。如果对象的值以影响 equals原创 2021-09-04 17:12:07 · 149 阅读 · 0 评论 -
HashMap
说明Map 接口的基于哈希表的实现。此实现提供了所有可选的映射操作,并允许 null 值和 null 键。 (HashMap 类大致等同于 Hashtable,除了它是非同步的并且允许空值。)该类不保证映射的顺序;特别是,它不保证订单会随着时间的推移保持不变。 此实现为基本操作(get 和 put)提供恒定时间性能,假设散列函数将元素正确地分散到存储桶中。集合视图上的迭代需要的时间与 HashMap 实例的“容量”(桶的数量)加上它的大小(键值映射的数量)成正比。因此,如果迭代性能很重要,则不要将初始容原创 2021-09-01 16:30:59 · 190 阅读 · 0 评论 -
TreeSet
说明基于 TreeMap 的 NavigableSet实现。元素使用它们的Comparable 自然排序 排序,或者通过在集合创建时提供的 Comparator 排序,具体取决于使用的构造函数。 此实现为基本操作( add、 remove 和 contains)提供有保证的 log(n) 时间成本。 请注意,如果要正确实现 Set 接口,则集合维护的排序(无论是否提供显式比较器)必须与 equals 一致。 (请参阅 Comparable 或 Comparator 以获得 consisten原创 2021-08-24 18:08:49 · 127 阅读 · 0 评论 -
HashSet
说明这个类实现了 Set 接口,由一个哈希表(实际上是一个 HashMap 实例)支持。它不保证集合的迭代顺序;特别是,它不保证订单会随着时间的推移保持不变。此类允许 null 元素。 此类为基本操作(add、remove、contains 和 size)提供恒定的时间性能,假设散列函数将元素正确地分散在桶中。迭代这个集合需要的时间与 HashSet 实例的大小(元素数)加上支持 HashMap 实例的“容量”(桶数)的总和成正比。因此,如果迭代性能很重要,则不要将初始容量设置得太高(或负载因子太低),这原创 2021-08-24 16:46:22 · 113 阅读 · 0 评论 -
LinkedList
说明List 和 code Deque 接口的双向链表实现。实现所有可选的列表操作,并允许所有元素(包括null)。 所有操作的执行都符合双向链表的预期。索引到列表中的操作将从开始或结束遍历列表,以更接近指定索引的为准。 注意这个实现不是同步的。如果多个线程并发访问一个链表,并且至少有一个线程在结构上修改了链表,它必须在外部同步。 (结构修改是添加或删除一个或多个元素的任何操作;仅设置元素的值不是结构修改。)这通常是通过同步一些自然封装列表的对象来完成的。如果不存在此类对象,则应使用Collec原创 2021-08-20 15:35:43 · 69 阅读 · 0 评论 -
ArrayList实现类
说明数组结构实现,查询快,增删慢。运行效率快,线程不安全源码说明List 接口的可调整大小的数组实现。实现所有可选的列表操作,并允许所有元素,包括 null。除了实现 List 接口之外,该类还提供了操作内部用于存储列表的数组大小的方法。 (这个类大致相当于 Vector,只是它是不同步的。) size, isEmpty, get, set、iterator 和 listIterator 操作以恒定时间运行。 add 操作在均摊常数时间中运行,即添加 n 个元素需要 O(n) 时间。所有其他操作原创 2021-08-19 15:27:26 · 51 阅读 · 0 评论 -
List接口
说明有序集合(也称为 sequence)。此界面的用户可以精确控制每个元素在列表中的插入位置。用户可以通过整数索引(在列表中的位置)访问元素,并在列表中搜索元素。与集合不同,列表通常允许重复元素。更正式地说,列表通常允许元素对 e1 和 e2使得e1.equals(e2),并且如果它们允许 null,它们通常允许多个 null 元素元素。有人可能希望通过在用户尝试插入它们时抛出运行时异常来实现一个禁止重复的列表,这并非不可想象,但我们希望这种用法很少见。List 接口在iterator, add的契约原创 2021-08-18 14:52:03 · 68 阅读 · 0 评论 -
Collection
说明Collection是集合层次结构中的根接口。一个集合代表一组对象,称他们为集合的元素。一些集合允许重复元素,而另外一些则不允许。有些是有序的,有些是无序的。JDK不提供此接口的任何实现,他提供了更具体的子接口的实现,例如Set和List。此接口通常用于传递集合并在需要最大通用性的地方操作他们。可能包含重复元素的无序集合应该直接实现这个接口。所有通用(Collection)实现类(通常通过其子接口之一间接实现Collection)应该提供两个标准构造函数:一个void(无参数)构造函数,他创建了空原创 2021-08-17 15:24:10 · 78 阅读 · 0 评论 -
JAVA集合
接口继承关系和实现集合类主要放在Java.util包中,主要有三种:set(集合),list(链表包含Queue)和map(映射)。Collection:Collection是集合List,Set,Queue的最基本接口。Iterator:迭代器,可以通过迭代器遍历集合中数据。Map:是映射表的基础接口。Listjava的List是非常常用的数据类型。List是有序的Collection。Java List一共有三个实现类:分别是ArrayList,Vector,LinkedList。原创 2021-04-11 17:31:47 · 154 阅读 · 0 评论