dart:collection

类和实用程序,用于补充 dart:core 中的集合支持。

在您的代码中使用此库

import 'dart:collection';

Map

从唯一键到其相关值的有限映射。如果存在,允许高效查找与键关联的值,并遍历映射的各个键和值。Map 接口有多种实现,包括以下几种

Set

一个对象集合,其中每个对象只能出现一次。Set 接口有多种实现,包括以下几种

Queue

一个元素序列,该序列旨在通过在其两端添加或删除元素来修改。Dart 队列是 双端队列,这意味着可以从两端同等访问,因此可以用来实现栈和队列的行为。

List

一个可索引的对象序列。可以使用对象在序列中的位置或索引来访问对象。《List》在其他编程语言中也被称为“数组”。

LinkedList

LinkedList 是一个扩展了 LinkedListEntry 的特殊双链表。每个元素都知道自己在链表中的位置以及它所在的列表。

DoubleLinkedQueue<E>
一个基于双链表的队列实现。
DoubleLinkedQueueEntry<E>
双链表中的一个条目。
HashMap<K, V>
基于哈希表的 Map 实现。
HashSet<E>
基于无序哈希表的 Set 实现。
HasNextIterator<E>
用于包装 Iterator,提供 Dart 1.0 之前的迭代器接口。
LinkedHashMap<K, V>
一个插入顺序的 Map,期望的查找时间恒定。
LinkedHashSet<E>
基于哈希表的 Set 实现。
LinkedList<E extends LinkedListEntry<E>>
一个扩展了 LinkedListEntry 的特殊双链表。
LinkedListEntry<E extends LinkedListEntry<E>>
可以成为 LinkedList 元素的对象。
ListBase<E>
列表的抽象实现。
ListQueue<E>
基于列表的 Queue
MapBase<K, V>
实现 Map 的基类。
MapView<K, V>
围绕实现 Map 的类的包装器,仅公开 Map 成员。
Queue<E>
可以在两端进行操作的 Queue。可以通过 forEachIterator 迭代队列的元素。
SetBase<E>
Set 的基本实现。
SplayTreeMap<K, V>
一个可以相对彼此排序的对象 Map
SplayTreeSet<E>
一个可以相对彼此排序的对象 Set
UnmodifiableListView<E>
另一个 List 的不可修改 List 视图。
UnmodifiableMapBase<K, V>
不可修改 Map 的基本实现。
不可修改的MapView<K, V>
不允许修改的 Map 视图。
不可修改的SetView<E>
另一个 Set 的不可修改 Set 视图。

扩展

IterableExtensions on Iterable<T>
迭代器的操作。
NullableIterableExtensions on Iterable<T?>
带有可空元素的迭代器的操作。

类型定义

IterableBase<E> = Iterable<E>
实现 Iterable 的基类。
IterableMixin<E> = Iterable<E>
Iterable 混合实现了除了 iterator 之外的所有 Iterable 成员。
ListMixin<E> = ListBase<E>
列表类的基混入实现。
MapMixin<K, V> = MapBase<K, V>
实现 Map 的混入。
SetMixin<E> = SetBase<E>
集合类的混入实现。