Найти в Дзене
Статьи Kotlin

Статьи Kotlin

Статьи по языку программирования Kotlin
подборка · 57 материалов
Фильтрация списка в Kotlin
В этом руководстве мы рассмотрим различные способы фильтрации списка (List) в Kotlin. Стандартная библиотека Kotlin предлагает множество удобных функций для фильтрации списков. Эти функции возвращают новый список и могут использоваться как для неизменяемых, так и для изменяемых списков. Для фильтрации применяются предикаты — лямбда-выражения, возвращающие true для элементов, удовлетворяющих условию. Функция filter() возвращает новый список элементов, удовлетворяющих предикату: val countries = listOf("Germany", "India", "Japan", "Brazil", "Australia") val filterList = countries...
Проверка, пуста ли строка в Kotlin
В зависимости от требований к null-значениям и других условий, в Kotlin есть несколько функций-расширений, которые помогают определить, пуста ли строка. В этом коротком руководстве мы познакомимся с этими функциями и узнаем, как проверить, пуста ли строка или состоит ли она только из пробелов. Строка считается пустой, если её длина равна нулю. Чтобы проверить, является ли не-null строка пустой, можно использовать функцию isEmpty(): val empty = "" assertTrue { empty.isEmpty() } А чтобы проверить,...
Преобразование массива в список в Kotlin
1. Обзор В этом руководстве мы рассмотрим, как преобразовать массив (Array) в список (List) в Kotlin. Хотя в теории эти структуры данных значительно различаются по производительности и использованию памяти, на практике разница часто несущественна. Это объясняется тем, что в большинстве случаев при работе со списками мы используем ArrayList. Кроме того, Kotlin поощряет неизменяемость структур данных, предпочитая создавать новые объекты при обновлениях, а не модифицировать существующие — в этом контексте различия между Array и List становятся несущественными...
Получить имя текущей выполняемой функции в Kotlin
В этом руководстве мы познакомимся с несколькими способами получения имени текущей выполняемой функции в Kotlin. Первый способ является наиболее идиоматичным, если мы используем Java 9. Помимо него, мы также рассмотрим несколько «хакерских» подходов, которые работают, но имеют свои недостатки. Java 9 представила API Stack-Walking — для ленивого обхода кадров стека текущего потока. Этот API обеспечивает более эффективный обход, так как не захватывает все кадры сразу (что ресурсоёмко) и не создает лишние объекты или классы, в отличие от альтернативных решений...
Kotlin Coroutines: Ожидание завершения нескольких потоков (корутин)
В этом руководстве мы рассмотрим, как запускать группу задач параллельно и ожидать их завершения. Вместо потоков мы будем использовать корутины, поскольку это рекомендуемый способ реализации конкурентности в Kotlin. Функция async в Kotlin позволяет запускать конкурентные корутины и возвращает результат типа Deferred<T>. Deferred — это неблокирующий, отменяемый future-объект, который представляет результат, изначально неизвестный. Например, вызвав метод await у Deferred, мы ждём завершения задачи и затем получаем результат...
Преобразование массивов байт в шестнадцатеричные строки в Kotlin
В этом руководстве мы рассмотрим несколько способов преобразования ByteArray в шестнадцатеричную строку в Kotlin. Сначала мы разберём общий алгоритм преобразования. Затем реализуем его с помощью стандартных библиотек Kotlin и Java. И в качестве бонуса — покажем реализацию с использованием циклов и побитовых операций. Чтобы преобразовать массив байтов в его шестнадцатеричный эквивалент, нужно: Поскольку 1 байт = 8 бит, а 1 шестнадцатеричный символ = 4 бита, каждый байт должен быть представлен двумя символами...