JSONArray 转成 ArrayList

##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’}

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值