Student 实体类

/*** @author Miracle Luna* @version 1.0* @date 2019/7/5 18:06*/
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;}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", age=" + age +", gender='" + gender + '\'' +'}';}
}


ArrayList 转成 JSONArray

简单总结了 6 种 方法(推荐 第5、6种),代码如下:

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;import java.util.ArrayList;/*** @author Miracle Luna* @version 1.0* @date 2019/7/5 17:43*/
public class ArrayListToJSONArray {public static void main(String[] args) {ArrayList<Student> studentList = new ArrayList<Student>();JSONArray studentJsonArray = new JSONArray();Student John = new Student("John", 16,"boy");Student Lily = new Student("Lily", 17, "girl");Student Jack = new Student("Jack", 18, "boy");studentList.add(John);studentList.add(Lily);studentList.add(Jack);System.out.println("=============== studentList info ================");System.out.println(studentList.toString());// 方式 1studentJsonArray = JSON.parseArray(JSONObject.toJSONString(studentList));System.out.println("\n方式 1: " + studentJsonArray.toJSONString());// 方式 2studentJsonArray = JSON.parseArray(JSON.toJSONString(studentList));System.out.println("\n方式 2: " + studentJsonArray.toJSONString());// 方式 3studentJsonArray = JSONObject.parseArray(JSONObject.toJSONString(studentList));System.out.println("\n方式 3: " + studentJsonArray.toJSONString());// 方式 4studentJsonArray = JSONObject.parseArray(JSON.toJSONString(studentList));System.out.println("\n方式 4: " + studentJsonArray.toJSONString());// 方式 5studentJsonArray = JSONArray.parseArray(JSONObject.toJSONString(studentList));System.out.println("\n方式 5: " + studentJsonArray.toJSONString());// 方式 6studentJsonArray = JSONArray.parseArray(JSON.toJSONString(studentList));System.out.println("\n方式 6: " + studentJsonArray.toJSONString());System.out.println("\n============== Lambda 表达式 遍历 JSONArray ============");studentJsonArray.forEach(student -> System.out.println("student info: " + student));}
}

执行结果如下:

=============== studentList info ================
[Student{name='John', age=16, gender='boy'}, Student{name='Lily', age=17, gender='girl'}, Student{name='Jack', age=18, gender='boy'}]方式 1: [{"gender":"boy","name":"John","age":16},{"gender":"girl","name":"Lily","age":17},{"gender":"boy","name":"Jack","age":18}]方式 2: [{"gender":"boy","name":"John","age":16},{"gender":"girl","name":"Lily","age":17},{"gender":"boy","name":"Jack","age":18}]方式 3: [{"gender":"boy","name":"John","age":16},{"gender":"girl","name":"Lily","age":17},{"gender":"boy","name":"Jack","age":18}]方式 4: [{"gender":"boy","name":"John","age":16},{"gender":"girl","name":"Lily","age":17},{"gender":"boy","name":"Jack","age":18}]方式 5: [{"gender":"boy","name":"John","age":16},{"gender":"girl","name":"Lily","age":17},{"gender":"boy","name":"Jack","age":18}]方式 6: [{"gender":"boy","name":"John","age":16},{"gender":"girl","name":"Lily","age":17},{"gender":"boy","name":"Jack","age":18}]============== Lambda 表达式 遍历 JSONArray ============
student info: {"gender":"boy","name":"John","age":16}
student info: {"gender":"girl","name":"Lily","age":17}
student info: {"gender":"boy","name":"Jack","age":18}


JSONArray 转成 ArrayList

简单总结了 7 种 方法(推荐前 4种),代码如下:

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;import java.util.*;/*** @author Miracle Luna* @version 1.0* @date 2019/7/5 18:36*/
public class JSONArrayToArrayList {public static void main(String[] args) {JSONArray studentJSONArray = new JSONArray();List<Student> studentList = new ArrayList<Student>();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'}

Java 语言 ArrayList 和 JSONArray 相互转换相关推荐

  1. Java语言 List 和 Array 相互转换

    import java.util.ArrayList; import java.util.Arrays; import java.util.List;/*** List集合 转换为 Array数组*/ ...

  2. 《JAVA语言程序设计-YDL-李娜-机械工业出版社-原书第八版》笔记

    2019独角兽企业重金招聘Python工程师标准>>> 目录:硬件-程序-选择-循环-方法-数组-对象和类-继承多态-多继承接口-IO-异常-递归 计算机是通过程序设计语言编写的软件 ...

  3. Java语言的基础知识9

    第十一章(线程) 1.通过String name=Thread.currentThread().getName();来获取当前线程的名称. 2.多次启动一个线程或者启动一个已经运行的线程是非法的,会抛 ...

  4. “坑爹”排行榜:Java语言最违反常识的功能点TOP 10

    来自:互联网全栈架构 作为一门面向对象的编程语言,Java凭借其简单易用.功能强大的特点受到了广大编程爱好者的青睐,伴随着开源社区的推波助澜,Java语言更是席卷全球,势不可挡,在世界各地都有Java ...

  5. 探索Java语言与JVM中的Lambda表达式

    2019独角兽企业重金招聘Python工程师标准>>> 转载来源:http://www.admin10000.com/document/1291.html Lambda表达式是自Ja ...

  6. java 计算移动平均线_基于Java语言开发的个性化股票分析技术:移动平均线(MA)...

    基于Java语言开发的个性化股票分析技术:移动平均线(MA) 基于 Java 语言开发的个性化股票分析技术:移动平均线(MA)移动平均线(MA)是以道·琼斯的"平均成本概念"为理论 ...

  7. Java 语言中十大“坑爹”功能!

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源:https://www.sohu.com/a/35 ...

  8. 使用Java语言从零开始创建区块链

    使用Java语言从零开始创建区块链 2018年04月01日 17:08:12 大侠区块链 阅读数:1312 标签: java区块链java区块链 更多 个人分类: 区块链 Java区块链开发与交流群: ...

  9. web开发的java语言步骤_java web开发入门一(servlet和jsp)基于eclispe

    servlet 用java语言开发动态资源网站的技术,在doGet方法中拼接显示html,在doPost方法中提交数据.类似于.net的ashx技术. servlet生成的class文件存放在tomc ...

最新文章

  1. MediaInfo+c#获取视频码率
  2. python安装完后无法打开运行_安装Python完成后无法正确运行
  3. 灵魂拷问,上 Kubernetes 有什么业务价值?
  4. Intel Realsense C/C++ 转 python (1)rs-hello-realsense 获取摄像头正中心对应的深度数据 get_distance()
  5. JAVA之关于This的用法
  6. LINQ中的Lambda表达式
  7. java当月最后一天_Java日期循环,Java获取当月的第一天和最后一天 | 学步园
  8. vivo V15 Pro渲染图曝光 弹出式摄像头后置三摄
  9. html 中写注释吗,html怎么注释?
  10. memcached的安装(server、client)、magent整合
  11. WDCP(WDlinux Control Panel) mysql/add_user.php、mysql/add_db.php Authentication Loss
  12. 程序员常用的数学公式
  13. 使用Excel内置控件生成二维码
  14. 山石岩读丨前沿领域探析——汽车CAN总线协议详解及攻击面分析
  15. 前端关系图谱插件_前端拓扑图插件选型对比
  16. Macropodus 新词发现详解(new word discovery, python3)
  17. ups机房动环监控系统方案
  18. 干货分享丨HDR 技术产品实践与探索
  19. Ubuntu lightdm无法启动解决办法
  20. oracle求累积收益率,解决报表sql中的累计收益率问题?换个姿势,再来一次~

热门文章

  1. python的celery的面试_python面试基础题总结
  2. 如何快速搭建一个属于自己的网站?
  3. linux下scrapy安装教程,linux centos7安装scrapy
  4. Leetcode每日一题:976.largest-perimeter-triangle(三角形的最大周长)
  5. Python学习相关文档
  6. c++ 输出二进制_Q音直播编译优化与二进制集成方案
  7. Docker容器镜像删除不掉解决办法?
  8. 收集的一些好的网址[持续更新]
  9. android开发realm多线程操作,数据库的设计:深入理解 Realm 的多线程处理机制
  10. asp代码在dwearwear转换成html格式怎么转,为前端而生的编辑器Brackets及配置推荐