LinkedHashSet абстрактный класс
LinkedHashSet — это реализация множества (Set) на основе хеш-таблицы.
Он также отслеживает порядок добавления элементов, и итерация происходит в порядке добавления от первого к последнему.
Элементы в LinkedHashSet должны иметь согласованные реализации Object.== и Object.hashCode. Это означает, что оператор == должен определять стабильное отношение эквивалентности над элементами (рефлексивное, симметричное, транзитивное и согласованное со временем), а hashCode должен быть одинаковым для объектов, которые считаются равными по оператору ==.
Множество допускает null в качестве элемента.
Итерация элементов выполняется в порядке добавления элементов. Элемент, добавленный позже, будет встречаться позже в итерации. Добавление элемента, который уже присутствует в множестве, не меняет его позицию в порядке итерации, но удаление элемента и его последующее добавление сделает его последним элементом в итерации.
Большинство простых операций над LinkedHashSet выполняются за (потенциально амортизированное) постоянное время: add, contains, remove и length, при условии, что хеш-коды объектов хорошо распределены.
- Реализует
-
- HashSet<E>
Конструкторы
- LinkedHashSet({bool equals(E e1, E e2), int hashCode(E e), bool isValidKey(potentialKey) }) factory
-
Создаёт упорядоченное по добавлению хеш-множество, используя предоставленные
equalsиhashCode. - LinkedHashSet.from(Iterable elements) factory
-
Создаёт хеш-множество, содержащее все
elements. - LinkedHashSet.identity() factory
-
Создаёт упорядоченное по добавлению множество, использующее сравнение по идентичности.
Свойства
- iterator → Iterator<E> только для чтения
-
Предоставляет итератор, который перебирает элементы в порядке добавления.
- first → E только для чтения, унаследованное
-
Возвращает первый элемент.
- hashCode → int только для чтения, унаследованное
-
Хеш-код этого объекта.
- isEmpty → bool только для чтения, унаследованное
-
Возвращает
true, если в коллекции нет элементов. - isNotEmpty → bool только для чтения, унаследованное
-
Возвращает true, если в коллекции есть хотя бы один элемент.
- last → E только для чтения, унаследованное
-
Возвращает последний элемент.
- length → int только для чтения, унаследованное
-
Возвращает количество элементов в итерируемом объекте.
- runtimeType → Type только для чтения, унаследованное
-
Представление типа объекта во время выполнения.
- single → E только для чтения, унаследованное
-
Проверяет, что в этом итерируемом объекте только один элемент, и возвращает этот элемент.
Операторы
- operator ==(
other) → bool унаследованное -
Оператор равенства.
Методы
- forEach(
void action(E element)) → void -
Выполняет функцию для каждого элемента набора.
- add(
E value) → bool inherited -
Добавляет
valueв набор. - addAll(
Iterable<E> elements) → void inherited -
Добавляет все
elementsв этот набор. - any(
bool f(E element)) → bool inherited -
Проверяет, удовлетворяет ли какой-либо элемент этого итерируемого объекта
test. - clear(
) → void inherited -
Удаляет все элементы из набора.
- contains(
Object value) → bool inherited -
Возвращает true, если
valueсодержится в наборе. - containsAll(
Iterable<Object> other) → bool inherited -
Возвращает, содержит ли этот набор все элементы
other. - difference(
Set<Object> other) → Set<E> inherited -
Возвращает новый набор с элементами этого набора, которые отсутствуют в
other. - elementAt(
int index) → E inherited -
Возвращает
index-й элемент. - every(
bool f(E element)) → bool inherited -
Проверяет, удовлетворяет ли каждый элемент этого итерируемого объекта
test. - expand<T>(
Iterable<T> f(E element)) → Iterable<T> inherited -
Расширяет каждый элемент этого итерируемого объекта Iterable на ноль или более элементов.
- firstWhere(
bool test(E element), { E orElse() }) → E inherited -
Возвращает первый элемент, удовлетворяющий заданному предикату
test. - fold<T>(
T initialValue, T combine(T previousValue, E element)) → T inherited -
Приводит коллекцию к единственному значению, итеративно объединяя каждый элемент коллекции с существующим значением.
- intersection(
Set<Object> other) → Set<E> inherited -
Возвращает новый набор, являющийся пересечением этого набора и
other. - join(
[String separator = "" ]) → String inherited -
Преобразует каждый элемент в String и конкатенирует строки.
- lastWhere(
bool test(E element), { E orElse() }) → E inherited -
Возвращает последний элемент, удовлетворяющий заданному предикату
test. - lookup(
Object object) → E inherited -
Если в наборе есть объект, равный
object, возвращает его. - map<T>(
T f(E e)) → Iterable<T> inherited -
Возвращает новый ленивый итерируемый объект Iterable с элементами, созданными путем вызова
fдля каждого элемента этогоIterableв порядке итерации. - noSuchMethod(
Invocation invocation) → dynamic inherited -
Вызывается при обращении к несуществующему методу или свойству.
- reduce(
E combine(E value, E element)) → E inherited -
Приводит коллекцию к единственному значению, итеративно комбинируя элементы коллекции с помощью предоставленной функции.
- remove(
Object value) → bool inherited -
Удаляет
valueиз набора. Возвращает true, еслиvalueбыл в наборе. В противном случае возвращает false. Метод не оказывает никакого действия, еслиvalueзначение не было в наборе. - removeAll(
Iterable<Object> elements) → void inherited -
Удаляет каждый элемент
elementsиз этого набора. - removeWhere(
bool test(E element)) → void inherited -
Удаляет все элементы этого набора, удовлетворяющие
test. - retainAll(
Iterable<Object> elements) → void inherited -
Удаляет все элементы этого набора, которые не являются элементами
elements. - retainWhere(
bool test(E element)) → void inherited -
Удаляет все элементы этого набора, которые не удовлетворяют
test. - singleWhere(
bool test(E element)) → E inherited -
Возвращает единственный элемент, удовлетворяющий
test. - skip(
int count) → Iterable<E> inherited -
Возвращает Iterable, предоставляющий все элементы, кроме первых
count. - skipWhile(
bool test(E value)) → Iterable<E> inherited -
Возвращает
Iterable, пропуская начальные элементы, покаtestудовлетворяется. - take(
int count) → Iterable<E> inherited -
Возвращает ленивый итерируемый объект первых
countэлементов этого итерируемого объекта. - takeWhile(
bool test(E value)) → Iterable<E> inherited -
Возвращает ленивый итерируемый объект начальных элементов, удовлетворяющих
test. - toList(
{bool growable: true }) → List<E> inherited -
Создает List, содержащую элементы этого итерируемого объекта Iterable.
- toSet(
) → Set<E> inherited -
Создает
Set, содержащий те же элементы, что и этот итерируемый объект. - toString(
) → String inherited -
Возвращает строковое представление этого объекта.
- union(
Set<E> other) → Set<E> inherited -
Возвращает новый набор, который содержит все элементы этого набора и
other. - where(
bool test(E element)) → Iterable<E> inherited -
Возвращает новый ленивый итерируемый объект Iterable со всеми элементами, удовлетворяющими предикату
test.
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-collection/LinkedHashSet-class.html