String字符串转换成JsonArray的两种⽅法,以及JSONArray解
析为List。。。
1、⾸先引⼊相关的jar包(gson、JSONObject、JSONArray)
2、编写代码
public class Test {
public static void main(String[] args) {
//String转换成JSONArray
String test="[{\"name\":\"john\",\"age\":\"22\",\"className\":\"mca\"},{\"name\":\"zhang\",\"age\":\"23\",\"className\":\"nima\"}]";
JsonParser parser = new JsonParser();
JsonElement tradeElement = parser.parse(test);
JsonArray jsonArray = AsJsonArray();
JSONArray jsonArray1 = JSONArray.fromObject(test);
System.out.println("data="+jsonArray);
System.out.println("data="+jsonArray1);
//JSONArray转换成List<Map>
Iterator it = jsonArray1.iterator();
List<Map> result = new ArrayList<Map>();
while(it.hasNext()) {
json转换对象//将每⼀个jsonArray转换成字符串
String ja = it.next().toString();
//将每⼀个字符串转换为JSONObject
JSONObject jo = JSONObject.fromObject(ja);
Map map = jo;
result.add(map);
}
//将得到的list遍历出来
it = result.iterator();
while(it.hasNext()) {
Map m = (();
System.out.("name"));
}
}
}
3、查看控制台输出结果
4、引⽤场景
在移动应⽤开发中 ,前端和后端之间交流的数据格式通常是使⽤json字符串,有时前端需要提供json数组给后端,⽽后端收到的json数组仅仅是字符串格式,并不是真正的JsonArray对象,需要将字符串对象解析成真正的JsonArray对象则需要⽤到上述⽅法。
同样,在移动端难免会收到服务器端提供的JsonArray字符串,移动端也需要将JsonArray字符串解析成List<Map>后才可以通过操作集合中的map来获取相应的键-值对数据。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论