Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗dtSpGnFn 2 of 224 menu
◀ ▶

Обобщенная функция в Dart

Параметр типа у функции пишут в угловых скобках сразу после имени. Дальше это имя можно ставить в типы аргументов и в тип результата - как обычное имя типа, только оно задается на месте объявления.

Функция, которая возвращает список из одного переданного значения, подходит для любого типа элемента:

List<T> asList<T>(T value) { return [value]; }

При вызове компилятор часто сам подставляет конкретный тип вместо T по переданному значению. Явно тип тоже можно указать в угловых скобках у имени функции:

List<T> asList<T>(T value) { return [value]; } final tags = asList("io"); final codes = asList<int>(404); print(tags); print(codes);

Для строки T становится String без дополнительной записи. Для числа явная запись asList<int> нужна, когда из аргумента тип неочевиден или его нужно зафиксировать жестко.

Объявите функцию, которая принимает одно значение и возвращает список из двух таких же элементов подряд. Для строки "ab" выведите полученный список.

Для числа 7 получите список из двух элементов с явным указанием типа элемента в угловых скобках у функции и выведите результат.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить