分享免费的编程资源和教程

网站首页 > 技术教程 正文

Java集合 java集合有哪些类型使用场景

goqiw 2024-10-02 22:06:30 技术教程 26 ℃ 0 评论

目录:

Java集合API

Collection 体系

Set 集合

HashSet 的存储机制:

HashSet 还有一个子类:LinkedHashSet

TreeSet

List 集合

LinkedList

Deque 集合

Java集合API

Java Collection Framework API

集合,也叫容器类。它的功能,就相当于容器。

Java的集合(容器),它是用来 “装对象的”。

容器,应该有哪些方法供你使用?

— 把东西 “丢” 进容器中

— 把相应的东西 “读取” 出来,该东西依然在容器里。

— 把指定的 “东西” 从容器中删除。

— “挨个” 把每个东西数一次。(遍历)

— 把容器 “倒空” (清空)

— 把 A 容器中东西,全部倒入 B 容器中 集合 + 集合

— 拿 A 容器包含的东西,减去 B 容器中包含的东西 集合 + 集合

— 拿 A 容器包含的东西,与 B 容器中包含的东西求交集 集合 ∩ 集合

Collection 体系

Set 集合

就是 Collection 。它们的行为完全相似。

遍历 Set 集合,有两种方式:

A。用迭代器

B。用 foreach 循环

HashSet 的存储机制:

HashSet 还有一个子类:LinkedHashSet

它与 HashSet 的存储机制相似。

但 LinkedHashSet 额外地维护一个链表,这个链表可以保证 LinkedHashSet 能记住元素添加顺序。

LinkedHashSetTest 程序 及 运行结果:

TreeSet

特征:保证 Set 里的元素是 “大小排序” 的。

TreeSet — 它是标准的 “红黑树”

树 → 二叉树 → 排序二叉树 → 平衡排序二叉树 → 红黑树

List 集合

它提供了大量的 “根据索引” 来存、取元素的方法。

LinkedList

既是线性表,又是队列,还是栈。

LinkedList 底层是基于链表实现的。通常认为它的性能比上 ArrayList。

ArrayList :由于可以根据底层数组的索引存、取元素,所以性能非常快。

当插入元素、删除元素,后面的所有元素要跟着 “整体搬家”。

LinkedList:由于底层采用了链表来存储元素,因此根据索引存、取元素,所以性能较慢。

当插入元素、删除元素,无需 “整体搬家”,所以性能非常快。

Deque 集合

——— 它是功能被限制了的线性表。

既是队列 , 又是栈。

学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群346942462,我们一起学Java!

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表