Метод cast
Метод cast возвращает представление исходного итерируемого объекта,
элементы которого приведены к указанному типу. В первом параметре
метод принимает тип, к которому нужно привести элементы. Метод не
создаёт новый список и не копирует элементы сразу - приведение
выполняется лениво, в момент обращения к элементам.
Синтаксис
iterable.cast<R>()
Пример
Давайте приведём итерируемый объект с элементами типа
num к типу int и выведем результат:
void main()
{
Iterable<num> src = [1, 2, 3, 4, 5];
Iterable<int> res = src.cast<int>();
print(res);
}
Результат выполнения кода:
(1, 2, 3, 4, 5)
Пример
Давайте приведём итерируемый объект с элементами типа
Object к типу String и выведем результат:
void main()
{
Iterable<Object> src = ['a', 'b', 'c', 'd', 'e'];
Iterable<String> res = src.cast<String>();
print(res);
}
Результат выполнения кода:
(a, b, c, d, e)
Пример
Приведение выполняется лениво, поэтому ошибка типа возникает только при обращении к несовместимому элементу:
void main()
{
Iterable<Object> src = ['a', 1, 'c'];
Iterable<String> res = src.cast<String>();
print(res.first);
}
Результат выполнения кода:
"a"