zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    数组和矩阵问题
    Memcached安装以及PHP的调用
    php函数ob_start()、ob_end_clean()、ob_get_contents()
    Nginx
    电影大全 API接口
    找电影资源最强攻略,知道这些你就牛B了!
    CSS3 图片旋转
    curl网站开发指南
    Redis 集群方案
    从12大技巧、30个案例、99个模板谈怎么写标题
  • 原文地址:https://www.cnblogs.com/zf201149/p/9333172.html
Copyright © 2011-2022 走看看