##JAVA JSONArray 转成 ArrayList
Student 实体类:
/**
-
@author Wei ZB
-
@version 1.0
-
@date 2021/2/18
*/
public class Student {
private String name; // 姓名
private Integer age; // 年龄
private String gender; // 性别public Student(String name, Integer age, String gender) {
this.name = name;
this.age = age;
this.gender = gender;
}public String getName() {
return name;
}public void setName(String name) {
this.name = name;
}public Integer getAge() {
return age;
}public void setAge(Integer age) {
this.age = age;
}public String getGender() {
return gender;
}public void setGender(String gender) {
this.gender = gender;
}@Override
public String toString() {
return “Student{” +
“name=’” + name + ‘’’ +
“, age=” + age +
“, gender=’” + gender + ‘’’ +
‘}’;
}
}
具体实现方法:
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.*;
/**
-
@author Wei ZB
-
@version 1.0
-
@date 2021/2/18
*/
public class JSONArrayToArrayList {
public static void main(String[] args) {
JSONArray studentJSONArray = new JSONArray();
List studentList = new ArrayList();Map<String, Object> JohnMap = new HashMap<String, Object>(); JohnMap.put("name", "John"); JohnMap.put("age", 16); JohnMap.put("gender", "boy"); JSONObject John = new JSONObject(JohnMap); Map<String, Object> LilyMap = new HashMap<String, Object>(); LilyMap.put("name", "Lily"); LilyMap.put("age", 17); LilyMap.put("gender", "girl"); JSONObject Lily = new JSONObject(LilyMap); Map<String, Object> JackMap = new HashMap<String, Object>(); JackMap.put("name", "Jack"); JackMap.put("age", 18); JackMap.put("gender", "boy"); JSONObject Jack = new JSONObject(JackMap); studentJSONArray.add(John); studentJSONArray.add(Lily); studentJSONArray.add(Jack); System.out.println("\n===== studentJSONArray info ===="); System.out.println(studentJSONArray); System.out.println("\n==== JSONArray to ArrayList(方式 1) ==="); studentList = studentJSONArray.toJavaList(Student.class); studentList.forEach(student -> System.out.println("stundet info: " + student)); System.out.println("\n==== JSONArray to ArrayList(方式 2) ======"); studentList = JSON.parseArray(studentJSONArray.toJSONString(), Student.class); studentList.forEach(student -> System.out.println("stundet info: " + student)); System.out.println("\n=== JSONArray to ArrayList(方式 3) ======="); studentList = JSONObject.parseArray(studentJSONArray.toJSONString(), Student.class); studentList.forEach(student -> System.out.println("stundet info: " + student)); System.out.println("\n=== JSONArray to ArrayList(方式 4) ======"); studentList = JSONArray.parseArray(studentJSONArray.toJSONString(), Student.class); studentList.forEach(student -> System.out.println("stundet info: " + student)); System.out.println("\n==== JSONArray to ArrayList(方式 5) ======="); final ArrayList<Student> tmpList = new ArrayList<Student>(); studentJSONArray.forEach(studentJson -> { JSONObject jsonObject = (JSONObject)studentJson; Student student = new Student(jsonObject.getString("name"), jsonObject.getInteger("age"), jsonObject.getString("gender")); tmpList.add(student); }); studentList = tmpList; studentList.forEach(student -> System.out.println("stundet info: " + student)); System.out.println("\n==== JSONArray to ArrayList(方式 6) ======"); studentList.clear(); for (Object object : studentJSONArray) { JSONObject jsonObject = (JSONObject)object; Student student = new Student(jsonObject.getString("name"), jsonObject.getInteger("age"), jsonObject.getString("gender")); studentList.add(student); } studentList.forEach(student -> System.out.println("stundet info: " + student)); System.out.println("\n====== JSONArray to ArrayList(方式 7) ========"); studentList.clear(); for (int i = 0; i < studentJSONArray.size(); i++) { JSONObject jsonObject = (JSONObject)studentJSONArray.get(i); Student student = new Student(jsonObject.getString("name"), jsonObject.getInteger("age"), jsonObject.getString("gender")); studentList.add(student); } studentList.forEach(student -> System.out.println("stundet info: " + student));
}
}
结果如下:
======= studentJSONArray info =======
[{“gender”:“boy”,“name”:“John”,“age”:16},{“gender”:“girl”,“name”:“Lily”,“age”:17},{“gender”:“boy”,“name”:“Jack”,“age”:18}]
======= JSONArray to ArrayList(方式 1) ============
stundet info: Student{name=‘John’, age=16, gender=‘boy’}
stundet info: Student{name=‘Lily’, age=17, gender=‘girl’}
stundet info: Student{name=‘Jack’, age=18, gender=‘boy’}
====== JSONArray to ArrayList(方式 2) ============
stundet info: Student{name=‘John’, age=16, gender=‘boy’}
stundet info: Student{name=‘Lily’, age=17, gender=‘girl’}
stundet info: Student{name=‘Jack’, age=18, gender=‘boy’}
======== JSONArray to ArrayList(方式 3) ==========
stundet info: Student{name=‘John’, age=16, gender=‘boy’}
stundet info: Student{name=‘Lily’, age=17, gender=‘girl’}
stundet info: Student{name=‘Jack’, age=18, gender=‘boy’}
========= JSONArray to ArrayList(方式 4) ========
stundet info: Student{name=‘John’, age=16, gender=‘boy’}
stundet info: Student{name=‘Lily’, age=17, gender=‘girl’}
stundet info: Student{name=‘Jack’, age=18, gender=‘boy’}
=========== JSONArray to ArrayList(方式 5) ==========
stundet info: Student{name=‘John’, age=16, gender=‘boy’}
stundet info: Student{name=‘Lily’, age=17, gender=‘girl’}
stundet info: Student{name=‘Jack’, age=18, gender=‘boy’}
========== JSONArray to ArrayList(方式 6) ============
stundet info: Student{name=‘John’, age=16, gender=‘boy’}
stundet info: Student{name=‘Lily’, age=17, gender=‘girl’}
stundet info: Student{name=‘Jack’, age=18, gender=‘boy’}
========== JSONArray to ArrayList(方式 7) ==========
stundet info: Student{name=‘John’, age=16, gender=‘boy’}
stundet info: Student{name=‘Lily’, age=17, gender=‘girl’}
stundet info: Student{name=‘Jack’, age=18, gender=‘boy’}