大家好,欢迎来到IT知识分享网。
在做微信公众号开发时,调用接口返回一个如下形式的json字符串:
由于后续需要用到返回值,于是需要对这个json字符串进行解析转换
现在将这个json字符串转换成一个list类型的数组
首先创建一个类:
public class TagInfo {
private Object tags;
public Object getTags() {
return tags;
}
public void setTags(Object tags) {
this.tags= tags;
}
}
然后为里面的list数组创建Tag类
public class Tag{
long id;
String name;
long count;
//此处省略get、set方法
}
然后进行转换
public static List<Tag> getAllTags() {
String jsonTagInfo = tagInfo;//tagInfo就是上面需要转换的json字符串
JSONObject jsonObject;
List<Tag> tagList = new ArrayList<>();//用来存放由json字符串转换的list数组
try{
//先将json字符串转换成jsonObject对象
jsonObject = new JSONObject(JSON.parseObject(jsonTagInfo));
//将转换后的jsonObject对象转换成TagInfo对象
TagInfo tagInfo = (TagInfo) JSONObject.toJavaObject(jsonObject,TagInfo.class);
//将tagInfo中的jsonObject数组转换成list对象 方法1
tagList = JSONObject.parseArray(tagInfo.getTags().toString(), Tag.class);
//将tagInfo中的jsonObject数组转换成list对象 方法2
tagList = ((JSONArray)tagInfo.getTags()).toJavaList(Tag.class);
} catch (JSONException e) {
throw new RuntimeException(e.getMessage(), e);
}
return tagList;
}
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/24632.html
![java利用fastjson解析json数组、json字符串[亲测有效]插图1 java利用fastjson解析json数组、json字符串[亲测有效]](https://img.mushiming.top/app/yundeesoft_com/2998d08b24fd4cad80e470ea219c4aa4.jpg)