• json 与list ,map的转换


    首先引入包:

    <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.4</version>
            </dependency>

    //测试代码:

    1.JSON与list的互转

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class TestMain {
    
        public static void main(String[] args){
            Student s1 = new Student();
            s1.setName("zhangshan");
            s1.setAge(10);
    
            List<Student> studentList = new ArrayList<Student >();
            studentList.add(s1);
    
            //集合转json字符串
            String str=JSON.toJSONString(studentList);
            System.out.println(str);
    
    
            //json字符串转集合list
          List<Student> list = new ArrayList<Student>();
            list = JSONObject.parseArray(str, Student.class);
            System.out.println(list);
            for(Student s:list){
                System.out.println(s.getName()+s.getAge());
            }
    
    
    
        }
    
    }

    输出结果:

    [{"age":10,"name":"zhangshan"}]
    [Student@3d04a311]
    zhangshan10

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class TestMain {
    
        public static void main(String[] args){
            Student s1 = new Student();
            s1.setName("zhangshan");
            s1.setAge(10);
    
    
    
            List<Student> studentList = new ArrayList<Student >();
    //        studentList.add(s1);
    
            //空集合转json字符串
            String str=JSON.toJSONString(studentList);
            System.out.println(str);
    
    
            //json字符串转集合list
            List<Student> list = new ArrayList<Student>();
            list = JSONObject.parseArray(str, Student.class);
            System.out.println(list+"===="+list.size());
            for(Student s:list){
                System.out.println(s.getName()+s.getAge());
            }
    
    
    
        }
    
    }

    list.size =0 :输出 结果 :

    []
    []====0

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    
    import java.util.ArrayList;
    import java.util.List;
    
    public class TestMain {
    
        public static void main(String[] args){
            Student s1 = new Student();
            s1.setName("zhangshan");
            s1.setAge(10);
    
    
    
            List<Student> studentList = null;
    //        studentList.add(s1);
    
            //空集合转json字符串
            String str=JSON.toJSONString(studentList);
            System.out.println(str);
    
    
            //json字符串转集合list
            List<Student> list = new ArrayList<Student>();
            list = JSONObject.parseArray(str, Student.class);
            System.out.println(list);
            if(null !=list ){
    
                for(Student s:list){
                    System.out.println(s.getName()+s.getAge());
                }
            }
    
    
    
        }
    
    }

    list =null,输出结果:

    null
    null

    2.JSON与Map的互转

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    public class TestMain {
    
        public static void main(String[] args) {
            Student s1 = new Student();
            s1.setName("zhangshan");
            s1.setAge(10);
    
            Map<String, Student> map = new HashMap<String, Student>();
            map.put("zhangshan", s1);
            System.out.println(map);
            String json = JSON.toJSONString(map);
            System.out.println(json);
    
            Map map1 = JSON.parseObject(json);
            System.out.println(map1);
            System.out.println(map1 instanceof Map);
    
        }
    
    }

    输出结果:

    {zhangshan=Student@3764951d}
    {"zhangshan":{"age":10,"name":"zhangshan"}}
    {"zhangshan":{"name":"zhangshan","age":10}}
    true

    如果map.size=0,则上述输出:

    {}
    {}
    {}
    true
    如果map =null,则输出:

    null
    null
    null
    false

    3.JSON与对象的互转

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    public class TestMain {
    
        public static void main(String[] args) {
            Student s1 = new Student();
            s1.setName("zhangshan");
            s1.setAge(10);
            System.out.println(s1);
    
    
    
            String json = JSON.toJSONString(s1);
            System.out.println(json);
    
            Student student = JSON.parseObject(json, Student.class);
            System.out.println(student);
    
        }
    
    }

    如果s1=new Student();则输出:因为int会默认初始化一值

    Student@3764951d
    {"age":0}
    Student@277c0f21

    如果s1=null,则输出:

    null
    null
    null

  • 相关阅读:
    CSS设置行高
    微信小程序-水平垂直居中
    CSS布局
    HTML学习笔记—标签
    微信小程序--通过请求网页获取信息并显示
    docker 安装完mysql 后客户端无法访问
    Docker
    docker安装成功启动失败
    嵌入式Servlet容器自动配置和启动原理
    springboot外置的Servlet容器
  • 原文地址:https://www.cnblogs.com/zf201149/p/9333172.html
Copyright © 2020-2023  润新知