首页 >Java >java教程 >如何使用 GSON 将 JSON 数组解码为对象集合?

如何使用 GSON 将 JSON 数组解码为对象集合?

Linda Hamilton
Linda Hamilton原创
2024-12-20 22:38:10135浏览

How to Decode a JSON Array into a Collection of Objects Using GSON?

使用 GSON 解码嵌套数据结构

提供的 JSON 数据表示一个对象数组,而解码代码预期的是单个对象ChannelSearchEnum 类。这种不匹配会导致“预期是 BEGIN_OBJECT,但实际上是 BEGIN_ARRAY”异常。

要解决此问题,需要修改解码方法以处理对象数组。一种合适的方法是将 TypeToken 类与 fromJson 方法结合使用。

Type collectionType = new TypeToken<Collection<ChannelSearchEnum>>(){}.getType();
Collection<ChannelSearchEnum> enums = gson.fromJson(json, collectionType);

此代码为 ChannelSearchEnum 对象的集合创建类型令牌,然后在反序列化期间使用它来指定所需的类型。因此,GSON 将正确解析 JSON 数组并填充包含各个 ChannelSearchEnum 实例的 Collection。

以上是如何使用 GSON 将 JSON 数组解码为对象集合?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn