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

Список значений в Kotlin

Массив в JSON записывают квадратными скобками и элементами через запятую. Свойство типа List в @Serializable классе автоматически превращается в такой массив, если элемент списка тоже поддерживается кодеком.

Группа участников проекта - имя команды и список логинов. Оба поля входят в один data class:

import kotlinx.serialization.Serializable import kotlinx.serialization.json.Json @Serializable data class ProjectTeam(val name: String, val members: List<String>) fun main() { val team = ProjectTeam("alpha", listOf("kim", "lee", "pat")) println(Json.encodeToString(team)) }

В строке появится ключ members со значением-массивом строк. Пустой список сериализуется как [], порядок элементов сохраняется.

Разбор из текста восстанавливает List с тем же порядком. Достаточно передать JSON, где массив уже задан литералом:

import kotlinx.serialization.Serializable import kotlinx.serialization.json.Json @Serializable data class ProjectTeam(val name: String, val members: List<String>) fun main() { val raw = """{"name":"beta","members":["ada","bob"]}""" val team = Json.decodeFromString<ProjectTeam>(raw) println(team.members.size) println(team.members.first()) }

Опишите @Serializable RecipeCard с полем title и списком tags. Запишите карточку с названием "Soup" и тегами "hot", "veg" в JSON и выведите строку.

Разберите JSON {"title":"Pasta","tags":["italian","fast"]} в RecipeCard и выведите второй тег отдельной строкой.

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