На этом шаге мы приведем сводку по стандартным функциям.
В таблице 1 приводится краткая сводка по стандартным функциям Kotlin, описанным в предыдущих шагах.
Функция | Передает объект-приемник в лямбду как аргумент? | Ограничивает относительную область видимости? | Возвращает |
---|---|---|---|
let | Да | Нет | Результат лямбды |
apply | Нет | Да | Объект-приемник |
run(1) | Нет | Да | Результат лямбды |
with(2) | Нет | Да | Результат лямбды |
also | Да | Нет | Объект-приемник |
takeIf | Да | Нет | Версию объекта-приемника с поддержкой null |
takeUnless | Да | Нет | Версию объекта-приемника с поддержкой null |
(1)Версия run, вызываемая без объекта-приемника (применяется реже), не передает объект-приемник, не ограничивает относительную область видимости и возвращает результат лямбды | |||
(2)Функция with вызывается не в контексте объекта-приемника, как "hello.with{...}". Вместо этого воспринимает первый аргумент как объект-приемник, а второй как лямбду, например: "with("hello"){...}". Это единственная стандартная функция, которая работает таким образом, и поэтому мы рекомендуем ее избегать. |
На предыдущих шагах мы узнали, как можно упростить код, используя стандартные функции. Они дают возможность писать код, который не только лаконичен, но и передает особый дух языка Kotlin. Мы будем использовать эти стандартные функции в дальнейшем.
В следующеих шагах мы научимся представлять наборы данных с помощью переменных типов-коллекций List и Set.
Со следующего шага мы начнем рассматривать списки и множества.