fastjson如何解析json字符串数组呢?
下文笔者讲述fastjson解析字符串数组的方法分享,如下所示
解析json字符串数组有以下两种实现思路
方式1: 使用fastjson解析JSON字符串数组 我们可以使用 JSON.parseArray 方法 此方法可以将一个json字符串数组转换为 list对象 方式2: 使用for循环遍历json字符串 然后拼接出一个list对象例:fastjson解析JSON字符串数组
import com.alibaba.fastjson.JSON; import java.util.List; public class Example { public static void main(String[] args) { String jsonString = "[{\"name\":\"张三\",\"age\":18},{\"name\":\"李四\",\"age\":20}]"; List personList = JSON.parseArray(jsonString, Person.class); System.out.println(personList); } } class Person { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "Person{" + "name='" + name + '\'' + ", age=" + age + '}'; } }
运行以上代码,将输出以下信息 [Person{name='张三', age=18}, Person{name='李四', age=20}] //jsonString:待解析的JSON字符串 Person指目标类型Class对象 即待转化成的数据类型
使用for循环解析
String jsonString = "[{\"fileid\":\"abc\",\"srcfileid\":\"123456\",\"transResult\":\"S\"},{\"fileid\":\"d\",\"srcfileid\":\"123457\",\"transResult\":\"S\"}]"; JSONArray jsonArray = JSON.parseArray(jsonString); for (int i = 0; i <jsonArray.size(); i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); String fileid = jsonObject.getString("fileid"); String srcfileid = jsonObject.getString("srcfileid"); String transResult = jsonObject.getString("transResult"); System.out.println("fileid: " + fileid); System.out.println("srcfileid: " + srcfileid); System.out.println("transResult: " + transResult); }
将JSON字符串传递给JSON.parseArray()方法 将字符串解析为一个JSONArray对象 然后 遍历JSONArray获取每个JSON对象 并使用getXXX()方法获取相应的属性值
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。