将 volley 字符串响应 (List<List<Int>>) 转换为 Kotlin 列表
Convert volley string response (List<List<Int>>) to Kotlin list
我卡在了可能有一个简单解决方案的地方。
我有一个列表的字符串表示,如下所示:
"[[1, 2, 3], [4, 5, 6]]"
换句话说,一个列表包含 2 个列表,每组 3 个整数
Kotlin中如何将字符串转换为List的列表对象?
您可以使用 kotlinx.serialization
反序列化 JSON!
作为独立的 Kotlin 脚本:
@file:DependsOn("org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.0")
import kotlinx.serialization.decodeFromString
import kotlinx.serialization.json.Json
val s = "[[1, 2, 3], [4, 5, 6]]"
val j = Json.decodeFromString<List<List<Int>>>(s)
println(j) // [[1, 2, 3], [4, 5, 6]]
println(j[0][0]) // 1
在 Android 应用程序的 build.gradle
中,您需要这些行而不是 @file:DependsOn
:
dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.0'
}
apply plugin: 'kotlinx-serialization'
我卡在了可能有一个简单解决方案的地方。
我有一个列表的字符串表示,如下所示:
"[[1, 2, 3], [4, 5, 6]]"
换句话说,一个列表包含 2 个列表,每组 3 个整数
Kotlin中如何将字符串转换为List的列表对象?
您可以使用 kotlinx.serialization
反序列化 JSON!
作为独立的 Kotlin 脚本:
@file:DependsOn("org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.0")
import kotlinx.serialization.decodeFromString
import kotlinx.serialization.json.Json
val s = "[[1, 2, 3], [4, 5, 6]]"
val j = Json.decodeFromString<List<List<Int>>>(s)
println(j) // [[1, 2, 3], [4, 5, 6]]
println(j[0][0]) // 1
在 Android 应用程序的 build.gradle
中,您需要这些行而不是 @file:DependsOn
:
dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.0'
}
apply plugin: 'kotlinx-serialization'