注意:本文举例使用JSON的是fastjson 


1:JSONArray转List

  1. JSONArray字符串 转 List

    //初始化JSONArray
    JSONArray array=new JSONArray();
    array.add(0,"a");
    array.add(1,"b");
    array.add(2,"c");
    
    List<String> list = JSONObject.parseArray(array.toJSONString(),String.class);
    
    System.out.println(list.toString());

    输出结果:
    [a, b, c]

  2. JSONArray对象 转 List

    //初始化JSONArray
    JSONArray jsonArray = JSONArray.parseArray("[{\"name\":\"zhangsan\",\"age\":18},{\"name\":\"lisi\",\"age\":23}]");
    //打印jsonArray
    System.out.println(jsonArray.toJSONString());
    //转List
    List<Body> list = JSONArray.parseArray(jsonArray.toJSONString(), Body.class);
    //打印List<Body>
    System.out.println(list.toString());

    Body.class代码:
     

    /**
    *测试实体类
    **/
    static class Body implements Serializable {
            private static final long serialVersionUID = 1L;
            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 "Body{" +
                        "name='" + name + '\'' +
                        ", age=" + age +
                        '}';
            }
    }


    输出结果:
    [{"name":"zhangsan","age":18},{"name":"lisi","age":23}]
    [Body{name='zhangsan', age=18}, Body{name='lisi', age=23}]


2:List转JSONArray
    

List<T> list = new ArrayList<T>();
JSONArray jsonArray = JSONArray.parseArray(JSON.toJSONString(list));

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 4 个月前
8c391e04 6 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐