kotlin 处理json数组 [{"value":0.8,"intimacy":5000},{"value":0.9,"intimacy":10000}]
时间: 2024-10-12 22:03:48 浏览: 27
Kotlin处理JSON数组通常会涉及到序列化和反序列化操作。当你有一个像`[{"value":0.8,"intimacy":5000},{"value":0.9,"intimacy":10000}]`这样的JSON数组,你可以使用Kotlin的内置库`kotlinx.serialization`来进行处理。
首先,你需要将JSON字符串转换为Kotlin数据类的对象列表。例如,如果你有这样一个数据类:
```kotlin
data class JsonItem(val value: Double, val intimacy: Int)
```
你可以这样做:
```kotlin
val jsonString = "[{\"value\":0.8,\"intimacy\":5000},{\"value\":0.9,\"intimacy\":10000}]"
val jsonArray = jsonString.parseJsonArray<JsonItem>()
```
然后,`jsonArray`就是包含两个`JsonItem`对象的列表了。反之,如果你想将`JsonItem`列表转换为JSON,可以使用:
```kotlin
val jsonString = jsonArray.jsonFormat()
```
相关问题
val configs = "[{\"value\":0.8,\"intimacy\":5000},{\"value\":0.9,\"intimacy\":10000}]" kotlin 怎么处理
在Kotlin中,你可以将这样的JSON字符串解析成一个列表(List<Map<String, Any>>)结构,以便于访问和操作其中的配置项。Kotlin有一个名为`json.org`的库(或使用标准库的`JsonParser`),可以方便地进行JSON解析。以下是处理步骤:
```kotlin
import com.google.gson.Gson // 使用Gson库进行JSON解析
val jsonString = "[{\"value\":0.8,\"intimacy\":5000},{\"value\":0.9,\"intimacy\":10000}]"
val gson = Gson()
val configsMapList = gson.fromJson(jsonString, Array<Map<String, Any>>::class.java)
// 现在你可以遍历configurationsMapList,例如:
for (config in configsMapList) {
val value = config["value"] as Double
val intimacy = config["intimacy"] as Int
println("Value: $value, Intimacy: $intimacy")
}
阅读全文