大家好,欢迎来到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://yundeesoft.com/24632.html