Gson节点解析

本文介绍了Gson中JsonElement对象的使用,包括JsonElement的子类JsonPrimitive、JsonNull、JsonObject和JsonArray,以及它们对应的Java数据类型和取值方式。

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

I)、Gson 的 节点对象:

JsonElement : 所有的节点 都是 JsonElement 对象.

JsonPrimitive : 基本的 数据类型的 节点 对象, JsonElement 的子类.

JsonNull : 代表 空节点 对象,即 有 key,value 为空,JsonElement 的子类.

JsonObject : 对象 数据类型的 节点 对象JsonElement 的 子类.

JsonArray : 数组 数据类型的 节点 对象, JsonElement 的 子类.

II)、JsonElement 的取值:

JsonPrimitive : value 的 取值对应 java 的 int,double,float,long,short,boolean,char,byte,String,BigDecimal,BigInteger,Number 。

JsonObject : value 的取值对应 java 的 Object 对象.
JsonArray : value 的取值对应 java 的 List 及其子类对象.

//节点解析
		//解析步骤
		/*1,获得解析器
		 *2,获得根节点元素
		 *3,根据文档判断根节点属于什么类型的Gson节点对象
		 *4.取得节点下的某个节点的value
		 * */
		//创建json字符串
		String json = "{\"id\":003,\"data\":{\"name\":\"zs\",\"age\":18,\"hobby\":true}}";
		//获得解析器
		JsonParser parser = new JsonParser();
		//获取根节点元素
		JsonElement element = parser.parse(json);
		//根据文档判断跟节点属于什么类型的Gson节点对象
		JsonObject root = element.getAsJsonObject();
		//取得节点下的某个节点的value
		//获取id的值,id的值为基本数据类型节点
		JsonPrimitive idJson = root.getAsJsonPrimitive("id");
		System.out.println(idJson);
		//获得data节点的值,data节点为Object数据节点
		JsonObject dataJson = root.getAsJsonObject("data");
		
		//将节点上的数据转换为对象
		User user = new Gson().fromJson(dataJson,User.class);
		System.out.println(user);
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值