下面是详解Java中String、JSONObject、JSONArray以及List<实体类>之间的转换攻略。
将String转换为JSONObject
在Java中,可以通过JSONObject类将一个字符串转换为JSON对象,具体操作如下:
String jsonString = "{\"name\":\"小明\",\"age\":18}";
JSONObject jsonObject = JSONObject.parseObject(jsonString);
其中,jsonString
是一个包含JSON数据的字符串,jsonObject
是将jsonString
转换后的JSON对象。
将JSONObject转换为String
将一个JSON对象转换为字符串,可以使用toString()方法,例如:
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "小明");
jsonObject.put("age", 18);
String jsonString = jsonObject.toString();
其中,jsonObject
是一个JSON对象,jsonString
是将jsonObject
转换后的字符串。
将String转换为JSONArray
将一个包含JSON数组的字符串转换为JSONArray对象,可以使用JSONArray的静态方法parseArray(),例如:
String jsonArrayStr = "[{\"name\":\"小明\",\"age\":18},{\"name\":\"小红\",\"age\":20}]";
JSONArray jsonArray = JSONArray.parseArray(jsonArrayStr);
其中,jsonArrayStr
是一个包含JSON数组的字符串,jsonArray
是将jsonArrayStr
转换后的JSONArray对象。
将JSONArray转换为String
将一个JSONArray对象转换为字符串,可以使用toString()方法,例如:
JSONArray jsonArray = new JSONArray();
JSONObject jsonObject1 = new JSONObject();
jsonObject1.put("name", "小明");
jsonObject1.put("age", 18);
JSONObject jsonObject2 = new JSONObject();
jsonObject2.put("name", "小红");
jsonObject2.put("age", 20);
jsonArray.add(jsonObject1);
jsonArray.add(jsonObject2);
String jsonArrayStr = jsonArray.toString();
其中,jsonArray
是一个JSONArray对象,jsonArrayStr
是将jsonArray
转换后的字符串。
将List<实体类>转换为JSONArray
将一个包含实体类的List转换为JSONArray对象,需要进行如下操作:
List<Student> studentList = new ArrayList<>();
studentList.add(new Student("小明", 18));
studentList.add(new Student("小红", 20));
JSONArray jsonArray = JSONArray.parseArray(JSON.toJSONString(studentList));
其中,Student
是一个实体类,studentList
是一个包含Student
对象的列表,jsonArray
是将studentList
转换后的JSONArray对象。
将JSONArray转换为List<实体类>
将一个JSONArray对象转换为List<实体类>,需要进行如下操作:
JSONArray jsonArray = new JSONArray();
JSONObject jsonObject1 = new JSONObject();
jsonObject1.put("name", "小明");
jsonObject1.put("age", 18);
JSONObject jsonObject2 = new JSONObject();
jsonObject2.put("name", "小红");
jsonObject2.put("age", 20);
jsonArray.add(jsonObject1);
jsonArray.add(jsonObject2);
List<Student> studentList = JSON.parseArray(jsonArray.toString(), Student.class);
其中,jsonArray
是一个JSONArray对象,Student
是一个实体类,studentList
是将jsonArray
转换后的包含Student
对象的列表。
以上就是Java中String、JSONObject、JSONArray以及List<实体类>之间转换的详细攻略。
示例一:
String jsonString = "{\"name\":\"小明\",\"age\":18}";
JSONObject jsonObject = JSONObject.parseObject(jsonString);
System.out.println(jsonObject.getString("name")); // 输出:小明
System.out.println(jsonObject.getInteger("age")); // 输出:18
String jsonString2 = jsonObject.toString();
System.out.println(jsonString2); // 输出:{"name":"小明","age":18}
示例二:
List<Student> studentList = new ArrayList<>();
studentList.add(new Student("小明", 18));
studentList.add(new Student("小红", 20));
JSONArray jsonArray = JSONArray.parseArray(JSON.toJSONString(studentList));
System.out.println(jsonArray.toString());
List<Student> studentList2 = JSON.parseArray(jsonArray.toString(), Student.class);
for (Student student : studentList2) {
System.out.println(student.getName() + " " + student.getAge());
}
输出:
[{"age":18,"name":"小明"},{"age":20,"name":"小红"}]
小明 18
小红 20
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解Java中String JSONObject JSONArray List<实体类>转换 - Python技术站