Spec-Zone.ru › Dart 2

dart:collection

Класс Queue<E>

Queue — это коллекция, которая может быть обработана с обоих концов. Можно перебрать элементы очереди с помощью forEach или с помощью Iterator.

В общем случае запрещается изменять очередь (добавлять или удалять элементы) во время выполнения операции в очереди, например, во время вызова forEach. Изменение очереди во время итерации, скорее всего, нарушит итерацию. Это относится как к прямому использованию iterator, так и к итерации, возвращаемой методом, например, map или where.

Пример:

final queue = Queue<int>(); // ListQueue() by default
print(queue.runtimeType); // ListQueue

// Adding items to queue
queue.addAll([1, 2, 3]);
queue.addFirst(0);
queue.addLast(10);
print(queue); // {0, 1, 2, 3, 10}

// Removing items from queue
queue.removeFirst();
queue.removeLast();
print(queue); // {1, 2, 3}
Реализованные типы
  • Iterable<T>
Реализующие классы
  • DoubleLinkedQueue
  • ListQueue
Доступные расширения
  • EnumByName

Конструкторы

Queue()
factory
Создаёт очередь.
Queue.from(Iterable elements)
factory
Создаёт очередь, содержащую все elements.
Queue.of(Iterable<E> elements)
factory
Создаёт очередь из elements.

Свойства

first → E
только для чтения, унаследованное
Возвращает первый элемент.
hashCode → int
только для чтения, унаследованное
Код хеширования этого объекта.
isEmpty → bool
только для чтения, унаследованное
Является ли эта коллекция пустой.
isNotEmpty → bool
только для чтения, унаследованное
Содержит ли эта коллекция хотя бы один элемент.
iterator → Iterator<E>
только для чтения, унаследованное
Возвращает новый Iterator, который позволяет перебирать элементы этой Iterable.
last → E
только для чтения, унаследованное
Возвращает последний элемент.
length → int
только для чтения, унаследованное
Возвращает количество элементов в итерируемом объекте.
runtimeType → Type
только для чтения, унаследованное
Представление типа объекта во время выполнения.
single → E
только для чтения, унаследованное
Проверяет, содержит ли этот итерируемый объект только один элемент, и возвращает этот элемент.

Методы

add(E значение) → void
Добавляет value в конец очереди.
addAll(Iterable<E> список) → void
Добавляет все элементы из iterable в конец очереди. Длина очереди увеличивается на длину iterable.
addFirst(E значение) → void
Добавляет value в начало очереди.
addLast(E значение) → void
Добавляет value в конец очереди.
any(bool тест(E элемент)) → bool
inherited
Проверяет, удовлетворяет ли какой-либо элемент этого итерируемого объекта test.
cast<R>() → Queue<R>
override
Предоставляет представление этой очереди как очереди R экземпляров, при необходимости.
clear() → void
Удаляет все элементы из очереди. Размер очереди становится нулевым.
contains(Object? элемент) → bool
inherited
Присутствует ли в коллекции элемент, равный element.
elementAt(int индекс) → E
inherited
Возвращает index-й элемент.
every(bool тест(E элемент)) → bool
inherited
Проверяет, удовлетворяют ли все элементы этого итерируемого объекта test.
expand<T>(Iterable<T> кЭлементам(E элемент)) → Iterable<T>
inherited
Расширяет каждый элемент этого Iterable в ноль или более элементов.
firstWhere(bool тест(E элемент), {E илиElse()?}) → E
inherited
Возвращает первый элемент, удовлетворяющий заданному предикату test.
fold<T>(T начальноеЗначение, T объединить(T предыдущееЗначение, E элемент)) → T
inherited
Сводит коллекцию к одному значению, итеративно комбинируя каждый элемент коллекции с существующим значением
followedBy(Iterable<E> другой) → Iterable<E>
inherited
Возвращает ленивое объединение этого итерируемого объекта и other.
forEach(void действие(E элемент)) → void
inherited
Вызывает action для каждого элемента этого итерируемого объекта в порядке итерации.
join([String разделитель = ""]) → String
inherited
Преобразует каждый элемент в String и конкатенирует строки.
lastWhere(bool тест(E элемент), {E илиElse()?}) → E
inherited
Возвращает последний элемент, удовлетворяющий заданному предикату test.
map<T>(T кЭлементу(E e)) → Iterable<T>
inherited
Текущие элементы этого итерируемого объекта, изменённые toElement.
noSuchMethod(Invocation вызов) → dynamic
inherited
Вызывается при доступе к несуществующему методу или свойству.
reduce(E объединить(E значение, E элемент)) → E
inherited
Сводит коллекцию к одному значению, итеративно комбинируя элементы коллекции с помощью предоставленной функции.
remove(Object? значение) → bool
Удаляет единственный экземпляр value из очереди.
removeFirst() → E
Удаляет и возвращает первый элемент этой очереди.
removeLast() → E
Удаляет и возвращает последний элемент очереди.
removeWhere(bool тест(E элемент)) → void
Удаляет все элементы, соответствующие test из очереди.
retainWhere(bool тест(E элемент)) → void
Удаляет все элементы, не соответствующие test из очереди.
singleWhere(bool тест(E элемент), {E илиElse()?}) → E
inherited
Возвращает единственный элемент, удовлетворяющий test.
skip(int количество) → Iterable<E>
inherited
Возвращает Iterable, который обеспечивает все, кроме первых count элементов.
skipWhile(bool тест(E значение)) → Iterable<E>
inherited
Возвращает Iterable, который пропускает ведущие элементы, пока test выполняется.
take(int количество) → Iterable<E>
inherited
Возвращает ленивый итерируемый объект первых count элементов этого итерируемого объекта.
takeWhile(bool тест(E значение)) → Iterable<E>
inherited
Возвращает ленивый итерируемый объект ведущих элементов, удовлетворяющих test.
toList({bool изменяемый = true}) → List<E>
inherited
Создаёт List, содержащий элементы этого Iterable.
toSet() → Set<E>
inherited
Создаёт Set, содержащий те же элементы, что и этот итерируемый объект.
toString() → String
inherited
Строковое представление этого объекта.
where(bool тест(E элемент)) → Iterable<E>
inherited
Возвращает новый ленивый Iterable со всеми элементами, которые удовлетворяют предикату test.
whereType<T>() → Iterable<T>
inherited
Возвращает новый ленивый Iterable со всеми элементами, имеющими тип T.

Операторы

operator ==(Object другой) → bool
inherited
Оператор равенства.

Статические методы

castFrom<S, T>(Queue<S> источник) → Queue<T>
override
Преобразует source в Queue<T>.

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-collection/Queue-class.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API