Стандартная библиотека Kotlin: полный обзор

Онлайн-тренажер Python для начинающих

Изучайте Python легко и без перегрузки теорией. Решайте практические задачи с автоматической проверкой, получайте подсказки на русском языке и пишите код прямо в браузере — без необходимости что-либо устанавливать.

Начать курс

Стандартная библиотека Kotlin: полный обзор

Стандартная библиотека Kotlin (stdlib) — это мощный набор инструментов, который поставляется вместе с компилятором и обеспечивает базовую функциональность для повседневной разработки. В отличие от Java, где многие операции требуют внешних библиотек, Kotlin предлагает встроенные решения для работы с коллекциями, строками, корутинами, сериализацией и файловым вводом-выводом. В этой статье мы подробно разберём ключевые модули и функции стандартной библиотеки Kotlin с практическими примерами.

1. Основные типы и их возможности

Библиотека включает расширенные функции для примитивных типов и строк:

  • Числовые типы — Int, Double, Long и их расширения (.toInt(), .coerceIn()).
  • Строки — шаблоны ("Hello, $name"), многострочные строки ("""..."""), методы replace(), split(), trimIndent().
  • Диапазоны — 1..10, step 2, downTo.
// Пример работы со строками и диапазонами
fun main() {
    val name = "Kotlin"
    val greeting = "Hello, $name!"
    println(greeting) // Hello, Kotlin!

    for (i in 1..5 step 2) {
        println(i) // 1, 3, 5
    }
}

2. Коллекции: List, Set, Map

Kotlin разделяет коллекции на изменяемые (MutableList, MutableSet, MutableMap) и неизменяемые (List, Set, Map). Основные возможности:

  • Создание — listOf(), setOf(), mapOf().
  • Фильтрация и трансформация — filter(), map(), flatMap(), groupBy().
  • Агрегация — sum(), count(), reduce(), fold().
  • Сортировка — sorted(), sortedBy().
// Пример работы с коллекциями
fun main() {
    val numbers = listOf(1, 2, 3, 4, 5)
    val evenSquares = numbers
        .filter { it % 2 == 0 }
        .map { it * it }
    println(evenSquares) // [4, 16]

    val grouped = numbers.groupBy { if (it % 2 == 0) "even" else "odd" }
    println(grouped) // {odd=[1, 3, 5], even=[2, 4]}
}

3. Последовательности (Sequences)

Для ленивых вычислений Kotlin предлагает Sequence. Это особенно полезно при работе с большими объёмами данных:

fun main() {
    val result = (1..1_000_000)
        .asSequence()
        .filter { it % 2 == 0 }
        .map { it * 2 }
        .take(5)
        .toList()
    println(result) // [4, 8, 12, 16, 20]
}

4. Null-безопасность и элвис-оператор

Одна из ключевых фич Kotlin — безопасная работа с null. Библиотека предоставляет:

  • Элвис-оператор (?:) — задаёт значение по умолчанию.
  • Безопасный вызов (?.) — предотвращает NullPointerException.
  • Функция let — выполняет код только если объект не null.
fun main() {
    val name: String? = null
    val length = name?.length ?: 0
    println(length) // 0

    name?.let { 
        println("Name is not null: $it")
    }
}

5. Работа с файлами и потоками

Стандартная библиотека включает удобные расширения для java.io.File:

  • readText(), writeText() — чтение/запись строк.
  • readLines() — чтение построчно.
  • useLines() — безопасная работа с потоками.
  • copyTo(), deleteRecurs

Рекомендаций