Spec-Zone.ru › Dart 2

dart:collection

Метод cast<R>

List<R> cast<R>()
override

Возвращает представление этого списка как списка экземпляров R.

Если этот список содержит только экземпляры R, все операции чтения будут работать корректно. Если любая операция попытается прочитать элемент, который не является экземпляром R, доступ к элементу вызовет исключение.

Элементы, добавленные в список (например, с помощью add или addAll), должны быть экземплярами R, чтобы быть допустимыми аргументами для функции добавления, и они также должны быть экземплярами E, чтобы быть принятыми этим списком.

Методы, которые принимают Object? в качестве аргумента, такие как contains и remove, будут передавать аргумент напрямую методу этого списка без каких-либо проверок. Это означает, что вы можете выполнить listOfStrings.cast<int>().remove("a") успешно, даже если кажется, что это не должно иметь никакого эффекта.

Обычно реализуется как List.castFrom<E, R>(this).

Реализация

List<R> cast<R>() => List.castFrom<E, R>(this);

© 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/cast.html

Spec-Zone.ru

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