KT

JSON 转 Kotlin Data Class

生成嵌套 Kotlin Data Class、可空默认值与 kotlinx/Jackson 注解

JSON 与数据
🔒 100% 本地运行 — 你的数据不会离开当前页面
由 ToolsKit 编辑团队维护最近更新:2026年8月23日最近复核:2026年8月23日
JSON → Kotlin data classes

字段可选性根据对象数组中的缺失值和 null 推断;混合类型会降级为通用类型,生成后仍需按真实 API 契约复核。

Kotlin data classes

生成的 Kotlin data classes 会显示在这里。

工具说明

JSON 转 Kotlin Data Class 会把 JSON 对象或代表性数组转换为嵌套 Data Class。基础样例映射为 String、Long、Double 与 Boolean,数组生成 List,嵌套对象生成命名 Class,混合值降级为 Any。字段只要在任一样例中缺失或为 null,就会变成可空类型,并可设置默认 null。可以选择 kotlinx.serialization、Jackson 或无注解;Kotlin 标识符规范化改变线上 Key 时会生成 SerialName 或 JsonProperty。输出不会推断 Instant、BigDecimal、Sealed Hierarchy、Enum、业务默认值、Android Parcelable 或框架 Adapter,因此应配合选定序列化库和真实 Fixture 编译。

场景配方

01

准备移动端 API 响应模型

目标:接入序列化库前先记录观察到的可空性

  1. 粘贴包含正常记录和缺少可选字段样例的数组。
  2. 选择 kotlinx.serialization 或 Jackson,开启 null 默认值并设置响应模型名。
  3. 生成后把 Any 和通用字符串替换为领域类型,再在单元测试中解码 Fixture 响应。

结果:得到包含已观察可空性与明确线上名称注解的嵌套 Kotlin 模型草稿。

常见问题

可以选择 kotlinx.serialization 或 Jackson 吗?

可以,注解选择器会为任一库输出 Import 与名称注解,也可以选择不加注解。

可选属性怎样生成?

在样例中缺失或为 null 的字段会变成可空类型,并可默认等于 null。

嵌套 JSON 对象会生成独立 Data Class 吗?

会,生成器根据属性名确定性生成 PascalCase 类名。

字段出现混合类型会怎样?

会降级为 Any,避免把不可靠的具体类型伪装成安全契约。

会生成 Android Parcelable 或 Room 注解吗?

不会,这些属于 JSON 结构推断之外的平台与持久化决策。

样例 JSON 会上传吗?

不会,解析、推断、注解选择和 Kotlin 生成都在本地完成。

继续浏览