Класс ListMixin< E>
Базовая реализация класса List.
ListMixin может использоваться в качестве миксина для реализации интерфейса List.
Этот миксин реализует все операции чтения, используя только методы length и operator[]. Он реализует операции записи, используя эти методы и методы add, length= и operator[]=. Классы, использующие этот миксин, должны реализовать эти пять операций.
ПРИМЕЧАНИЕ: По соображениям обратной совместимости, существует реализация по умолчанию для add, которая работает только для списков с типом элементов, допускающим значение null. Для списков с не-nullable типом элементов, метод add должен быть реализован.
ПРИМЕЧАНИЕ: Простое делегирование четырёх операций чтения/записи length и [] обычному изменяемому списку List (как создаваемому с помощью литерала []) приведёт к очень плохой производительности для операций add и addAll над ListMixin. Эти операции реализуются путём увеличения длины списка на единицу для каждой операции add, и многократное увеличение длины изменяемого списка является неэффективным. Чтобы избежать этого, переопределите 'add' и 'addAll', также делегируя их непосредственно изменяемому списку, или, если возможно, используйте DelegatingList из "package:collection/collection.dart" вместо ListMixin.
- Реализованные типы
-
-
List<
E>
-
List<
- Реализации
- Доступные расширения
Конструкторы
- ListMixin()
Свойства
- first ↔ E чтение / запись, переопределение
- Возвращает первый элемент.
- hashCode → int только чтение, унаследованное
- Код хэша этого объекта.
- isEmpty → bool только чтение, переопределение
- Является ли коллекция пустой.
- isNotEmpty → bool только чтение, переопределение
- Содержит ли коллекция хотя бы один элемент.
- iterator → Iterator<
E> только чтение, переопределение - Возвращает новый
Iteratorдля итерации элементов этойIterable. - last ↔ E чтение / запись, переопределение
- Возвращает последний элемент.
- length ↔ int чтение / запись, унаследованное
- Количество элементов в этом списке.
- reversed → Iterable<
E> только чтение, переопределение - Iterable элементов этого списка в обратном порядке.
- runtimeType → Type только чтение, унаследованное
- Представление реального типа объекта.
- single → E только чтение, переопределение
- Проверяет, что в этом итерируемом объекте ровно один элемент, и возвращает этот элемент.
Методы
- add(
E element) → void override - Добавляет
valueв конец этого списка, увеличивая его длину на единицу. - addAll(
Iterable< E> iterable) → void override - Добавляет все объекты из
iterableв конец этого списка. - any(
bool test(E element)) → bool override - Проверяет, удовлетворяет ли какой-либо элемент этого итерируемого объекта условию
test. - asMap(
) → Map< int, E> override - Неизменяемый просмотр этого списка в виде Map.
- cast<
R>( ) → List< R> override - Возвращает представление этого списка в виде списка экземпляров
R. - clear(
) → void override - Удаляет все объекты из этого списка; длина списка становится равной нулю.
- contains(
Object? element) → bool override - Содержит ли коллекция элемент, равный
element. - elementAt(
int index) → E override - Возвращает
index-й элемент. - every(
bool test(E element)) → bool override - Проверяет, удовлетворяет ли каждый элемент этого итерируемого объекта условию
test. - expand<
T>( Iterable< T> f(E element)) → Iterable< T> override - Расширяет каждый элемент этого итерируемого объекта в ноль или более элементов.
- fillRange(
int start, int end, [E? fill]) → void override - Перезаписывает диапазон элементов значением
fillValue. - firstWhere(
bool test(E element), {E orElse()?}) → E override - Возвращает первый элемент, удовлетворяющий заданному предикату
test. - fold<
T>( T initialValue, T combine(T previousValue, E element)) → T override - Сводит коллекцию к одному значению, итеративно комбинируя каждый элемент коллекции с существующим значением.
- followedBy(
Iterable< E> other) → Iterable< E> override - Возвращает ленивую конкатенацию этого итерируемого объекта и
other. - forEach(
void action(E element)) → void override - Вызывает
actionдля каждого элемента этого итерируемого объекта в порядке итерации. - getRange(
int start, int end) → Iterable< E> override - Создает Iterable, который итерируется по диапазону элементов.
- indexOf(
Object? element, [int start = 0]) → int override - Первый индекс
elementв этом списке. - indexWhere(
bool test(E element), [int start = 0]) → int override - Первый индекс в списке, который удовлетворяет указанному
test. - insert(
int index, E element) → void override - Вставляет
elementв позициюindexв этом списке. - insertAll(
int index, Iterable< E> iterable) → void override - Вставляет все объекты из
iterableв позициюindexв этом списке. - join(
[String separator = ""]) → String override - Преобразует каждый элемент в String и конкатенирует строки.
- lastIndexOf(
Object? element, [int? start]) → int override - Последний индекс
elementв этом списке. - lastIndexWhere(
bool test(E element), [int? start]) → int override - Последний индекс в списке, который удовлетворяет предоставленному
test. - lastWhere(
bool test(E element), {E orElse()?}) → E override - Возвращает последний элемент, который удовлетворяет заданному предикату
test. - map<
T>( T f(E element)) → Iterable< T> override - Текущие элементы этого итерируемого объекта, измененные
toElement. - noSuchMethod(
Invocation invocation) → dynamic inherited - Вызывается при обращении к несуществующему методу или свойству.
- reduce(
E combine(E previousValue, E element)) → E override - Сводит коллекцию к одному значению, итеративно комбинируя элементы коллекции с помощью предоставленной функции.
- remove(
Object? element) → bool override - Удаляет первое вхождение
valueиз этого списка. - removeAt(
int index) → E override - Удаляет объект в позиции
indexиз этого списка. - removeLast(
) → E override - Удаляет и возвращает последний объект в этом списке.
- removeRange(
int start, int end) → void override - Удаляет диапазон элементов из списка.
- removeWhere(
bool test(E element)) → void override - Удаляет все объекты из этого списка, которые удовлетворяют условию
test. - replaceRange(
int start, int end, Iterable< E> newContents) → void override - Заменяет диапазон элементов элементами
replacements. - retainWhere(
bool test(E element)) → void override - Удаляет все объекты из этого списка, которые не удовлетворяют условию
test. - setAll(
int index, Iterable< E> iterable) → void override - Заменяет элементы объектами из
iterable. - setRange(
int start, int end, Iterable< E> iterable, [int skipCount = 0]) → void override - Записывает некоторые элементы
iterableв диапазон этого списка. - shuffle(
[Random? random]) → void override - Случайно перемешивает элементы этого списка.
- singleWhere(
bool test(E element), {E orElse()?}) → E override - Возвращает единственный элемент, который удовлетворяет
test. - skip(
int count) → Iterable< E> override - Возвращает Iterable, который предоставляет все, кроме первых
countэлементов. - skipWhile(
bool test(E element)) → Iterable< E> override
- Возвращает
Iterable, пропускающий начальные элементы, пока выполняетсяtest. - sort(
[int compare(E a, E b)?]) → void override - Сортирует этот список в порядке, определённом функцией
compare. - sublist(
int start, [int? end]) → List< E> override - Возвращает новый список, содержащий элементы между
startиend. - take(
int count) → Iterable< E> override - Возвращает ленивую итерацию первых
countэлементов этой итерации. - takeWhile(
bool test(E element)) → Iterable< E> override - Возвращает ленивую итерацию начальных элементов, удовлетворяющих условию
test. - toList(
{bool growable = true}) → List< E> override - Создаёт List, содержащую элементы этой итерации Iterable.
- toSet(
) → Set< E> override - Создаёт Set, содержащий те же элементы, что и эта итерируемая последовательность.
- toString(
) → String override - Строковое представление этого объекта.
- where(
bool test(E element)) → Iterable< E> override - Возвращает новую ленивую итерацию Iterable со всеми элементами, которые удовлетворяют предикату
test. - whereType<
T>( ) → Iterable< T> override - Возвращает новую ленивую итерацию Iterable со всеми элементами типа
T.
Операторы
- operator +(
List< E> other) → List< E> override - Возвращает конкатенацию этого списка и
other. - operator ==(
Object other) → bool inherited - Оператор равенства.
- operator [](
int index) → E inherited - Объект по заданному
indexв списке. - operator []=(
int index, E value) → void inherited - Устанавливает значение по заданному
indexв списке вvalue.
© 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/ListMixin-class.html