Avatar ·

如何在 Kotlin 中解析 JSON:最佳库与代码示例

大家好!我刚从 Java 转到 Kotlin,遇到了一个典型任务——需要将 JSON 字符串解析为对象。在 Java 中我使用 Gson 或 Jackson,但在 Kotlin 中我想做得更优雅、更符合语言习惯。 我有一个来自 API 的 JSON:
{
  "userId": 1,
  "id": 1,
  "title": "delectus aut autem",
  "completed": false
}
我尝试使用 Android SDK 内置的 JSONObject,但代码变得很糟糕:
val jsonString = """{"userId":1,"id":1,"title":"delectus aut autem","completed":false}"""
val jsonObject = JSONObject(jsonString)
val userId = jsonObject.getInt("userId")
val id = jsonObject.getInt("id")
val title = jsonObject.getString("title")
val completed = jsonObject.getBoolean("completed")
这简直是噩梦!每个字段都需要单独调用,容易在字段名上出错,而且类型需要手动指定。如果 JSON 是嵌套的或包含数组——那就更可怕了。 请指教