Сделайте свой код более читабельным с помощью «когда» в Kotlin
С тех пор, как появился Kotlin, он стал одним из предпочтительных языков для разработки приложений для Android-разработчиков по всему миру. Люди любят Kotlin по разным причинам: функции расширения, простота в использовании, меньше шаблонного кода, кроссплатформенная поддержка и многое другое.
Тем не менее, многие из нас упускают из виду потенциал маленьких вещей в Котлине. Например, я до сих пор вижу, как многие из моих товарищей по команде иногда используют if
и else if
вложенные операторы.
С Kotlin у нас может быть уникальное, но простое решение, которое может справиться с множеством проблем. Например, оператор when
может заменить все условные операторы в любом проекте Kotlin, если вы достаточно умен, чтобы его использовать.
Без промедления давайте узнаем, как эффективно использовать оператор when
в Kotlin.
Заменить If / Else на When
_5 _ / _ 6_ операторов использовались с самого начала программирования. Независимо от платформы / языка разработчики склонны использовать их для условного выполнения.
Благодаря Kotlin нам больше не нужно использовать старый стиль. Оператор when
работает со всеми типами условных операторов, включая _8 _ / _ 9_, и их вложенные операторы также могут быть заменены на when
.
Давайте рассмотрим простой пример, в котором мы возвращаем эмодзи на основе входной строки. Если вы думаете о написании традиционного письма, мы могли бы сделать следующее:
Мы можем переписать приведенный выше код, используя оператор when
в Kotlin. Он обеспечивает лучшую читаемость, чем _12 _ / _ 13_:
Заменить корпус переключателя на Когда
Подобно операторам _14 _ / _ 15_, switch
case - один из древних способов работы с условным исполнением. В Kotlin мы можем заменить switch
case и _18 _ / _ 19_ на when
аналогичным образом, чтобы сохранить согласованность при реализации условного выполнения.
Во-первых, давайте посмотрим, как реализовать приведенный выше пример с switch
традиционным способом:
Switch
case можно заменить оператором when
аналогично _24 _ / _ 25_. Это сделает код более читабельным, последовательным и обеспечит быструю адаптацию для новых разработчиков.
Возвращаемые значения с блоком When
До сих пор вы видели возможность блока when
в Kotlin заменять условные операторы. Но он может больше. Например, он может возвращать значения из условных блоков после выполнения необходимых шагов. Посмотри:
Такой тип реализации кода экономит массу времени для разработчиков.
Произвольные условия с когда
Мы можем использовать одну или несколько проверок для выполнения блока с оператором when
:
Только один регистр должен соответствовать соответствующему блоку кода, который должен быть выполнен, поэтому запятая действует как оператор OR
. В дополнение к этому, блок when
выполняет внутренние условия, такие как диапазон (как показано выше).
Использование без аргумента
До сих пор мы использовали when
в качестве аргумента. Но реальный потенциал when
в том, что мы можем использовать его без каких-либо аргументов, чего я никогда раньше не видел, используя Kotlin. Посмотри:
Он действует как простой блок _32 _ / _ 33_ с условиями переменных уровня класса.
Сравнение экземпляров с когда
Мы также можем проверить, является ли данный оператор экземпляром определенного типа во время выполнения, используя оператор is
. Оператор is
аналогичен оператору instanceof
в Java. Мы можем использовать операторы is
и !is
внутри блока when
. Посмотри:
Преимущества использования когда
- В Java несколько условных операторов, таких как
switch
, могут работать только с примитивными типами данных, перечислениями и строковыми классами. Но Kotlin позволяетwhen
использовать с пользовательскими типами. Это делает его более удобным для разработчиков. - В отличие от Java,
when
в Kotlin можно использовать с динамическими значениями, такими как типы возвращаемых функций. - Мы также можем проверить, присутствует ли данный аргумент в коллекциях, используя оператор
in
, который действует какcontains
.
Бонус
Чтобы узнать больше о Kotlin, прочитайте предыдущие части этой серии Advanced Programming With Kotlin:
- « Расширенное программирование с помощью Kotlin »
- « Расширенное программирование с Kotlin - Часть 2 »
- « Расширенное программирование на Kotlin - Часть 3 »
- « Расширенное программирование Android на Kotlin - Часть 4 »
Заключение
Это все. Надеюсь, вы узнали что-то полезное.