java j集合_java集合概述

Set 接口

声明了集合中不允许有重复元素的组行为。

SortedSet接口:

扩展了Set接口,声明了以升序进行排序的行为。

NavigableSet接口

扩展了SortedSet接口,并且该接口声明了支持基于最接近匹配原则检索元素的集合行为。

Queue接口

声明了队列的行为,队列通常是先进先出的列表,还有基于其他准则的队列类型。

Deque接口

扩展了Queue接口,并且声明了双端队列的行为。双端队列既可以像标准队列那样先进先出,也可以像堆栈那样后进先出。

ArrayList类

扩展了AbstractList类并实现了List接口,是原色为对象引用的长度可变的数组。

LinkedList类

扩展了AbstractSequentialList类,实现了List、Deque以及Queue接口,并且还提供了一种链表数据结构。

HashSet类

扩展了AbstractSet类并实现了Set接口,改类用于穿件使用哈希存储元素的集合。

哈希表使用称之为散列的机制存储信息。在散列机制中,键的信息用于确定唯一性的值,称为哈希码。然后将哈希码用作索引,在索引位置存储与键关联的数据。将键转换为哈希码是自动执行的——您永远不会看到哈希吗本身。此外

您的代码不能直接因哈希表。

LinkedHashSet类

维护集合中条目的一个链表,链表中条目的顺序就是插入他们的顺序,这使得可以按照插入顺序迭代集合。也就是说,当使用迭代器遍历LinkenHashSet时,原色将以插入他们的顺序返回。

TreeSet

扩展了AbstractSet类并实现了NavigableSet接口,用于创建使用树进行存储的组。对象以升序存储,访问和检索速度相当快,这使得对于存储大量的,必须能够快速查找到的有序信息来说是极佳选择。

PriorityQueue类

扩展了AbstractQueue类并实现了Queue接口,用于创建根据队列的比较器来判定优先级次序的队列。

ArrayDeque类

扩展了AbstractCollection类并实现了Deque,没有添加自己的方法。是动态数组,没有容量限制。

集合还会用了Comparator、RandomAccess、Iterator以及ListIterator接口:

Iterator:为了能通过迭代器访问集合,首先必须获得迭代器。每个集合都提供了iterator()方法,该方法返回一个指向集合开头的迭代器。通过使用这个迭代器对象,可以访问集合中的每个元素,每次访问一个元素。

Spliterator:用于遍历元素序列,spliterator的方法与使用迭代器不同。他提供的功能比Iterator和ListIterator多。最重要的一点是它支持并行迭代序列的一部分,支持并行编程。

RandomAccess:该接口不包含成员,通过实现这个接口,可表明结婚支持高效率地随机访问其中的元素。

Map接口

SoredMap接口

扩展了Map接口,确保条目以键的升序保存。

NavigableMap

扩展了SortedMap接口,支持基于最近接匹配原则的条目检索行为。即支持检索与给定的一个或多个键最多相匹配的条目。

map实现类

TreeMap 类

扩展了Abstract类并实现了NavigableMap接口,该类用于创建存储在树结构中的映射. TreeMap提供了有序存储键/值对的高效手段,并支持快速的检索。树映射确保元素以键的升序排序。

LinkedHashMap类

扩展了HashMap类,在映射中以插入条目的顺序维护一个条目链表,从而可以按照插入顺序迭代整个映射。

IdentityHashMap类

扩展了AbstractMap类,并实现了Map接口,除了当比较元素时使用引用相等性之外,其他方面与HashMap类似。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值