Json3:使用gson做节点解析

本文介绍使用Gson库解析JSON字符串的方法。通过一个具体的示例展示了如何获取JSON中的基本类型值以及对象类型值,并将其转换为Java对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Gson的节点对象:
JsonElement : 所有的节点 都是 JsonElement 对象.
JsonPrimitive : 基本的数据类型的节点对象,JsonElement的子类
JsonNull : 代表空节点对象,即有key,value为空,JsonElement的子类
JsonObject : 对象数据类型的节点对象, JsonElement的子类
JsonArray : 数组数据类型的节点对象, JsonElement的子类

 

import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.google.gson.JsonPrimitive;

public class Json节点解析 {
    public static void main(String[] args) {
        StringBuilder sb = new StringBuilder();

        sb.append("{");
        sb.append(" 'flag':true,");
        sb.append(" 'data':");
        sb.append("    {");
        sb.append("       'name':'典韦',");
        sb.append("       'Power':98");
        sb.append("    }");
        sb.append("}");

        String json = sb.toString();
        // 【1.获得解析者】
        JsonParser parser = new JsonParser();

        JsonElement element = parser.parse(json);
        // 【2.获得根节点元素】
        JsonObject root = element.getAsJsonObject();

        // 获得flag节点的值, flag节点为基本数据节点
        JsonPrimitive flagJson = root.getAsJsonPrimitive("flag");

        // 【3.取得节点下的某个节点的value】
        // 基本节点取值
        boolean flag = flagJson.getAsBoolean();

        // 获得 data 节点的值,data节点为Object数据节点
        JsonObject dataJson = root.getAsJsonObject("data");
        // 将节点上的数据转换为对象
        People p = new Gson().fromJson(dataJson, People.class);
        System.out.println(p.getName());
    }
}

运行结果:

典韦

 

转载于:https://www.cnblogs.com/AndyHoo/p/6375989.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值