Java对象、list集合与JSONObject、JSONArray、JSONString

本文介绍了一个具体的Java对象与JSON字符串互相转换的例子。通过创建一个Student类,并使用JSON库进行序列化和反序列化操作,展示了如何将Java对象转换为JSON格式,以及如何将JSON字符串解析回Java对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  首先创建一个Student对象:

public class Student {
    int age;
    String name;

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "Student{" +
                "age=" + age +
                ", name='" + name + '\'' +
                '}';
    }
}

  测试代码:

public class TestJson {
    public static void main(String[] args) {

        //创建student对象
        Student stu=new Student();
        stu.setAge(18);
        stu.setName("YanYeFa");

        //创建student集合
        List<Student> stulist=new ArrayList<>();
        stulist.add(stu);

        //java转json
        String stuJson= JSON.toJSONString(stu);
        //或则JSONObject对象直接调用ToJSONString()
        System.out.println("java转json结果:"+stuJson);

        //json转java
        Student student= JSONObject.parseObject(stuJson,Student.class);
        System.out.println("json转java结果:"+student);

        //list转jsonArray
        JSONArray jsonArray=JSON.parseArray(JSON.toJSONString(stulist));
        System.out.println("list转jsonArray结果:"+jsonArray);

        //jsonArray转list
        List<Student> studentList=JSONArray.parseArray(jsonArray.toJSONString(),Student.class);
        System.out.println("jsonArray转list结果:"+studentList.get(0));

        //jsonArray转jsonObject
        List<JSONObject> jsonObjects=new ArrayList<>();
        for (int i = 0; i < jsonArray.size(); i++) {
            jsonObjects.add(jsonArray.getJSONObject(i));
        }
        JSONObject jsonObject=new JSONObject();
        jsonObject.put("jsonObject",jsonObjects);
        System.out.println("jsonArray转jsonObject结果:"+jsonObject);

    }
}

  测试结果:

java转json结果:{“age”:18,“name”:“YanYeFa”} json转java结果:Student{age=18,
name=‘YanYeFa’} list转jsonArray结果:[{“name”:“YanYeFa”,“age”:18}]
jsonArray转list结果:Student{age=18, name=‘YanYeFa’}
jsonArray转jsonObject结果:{“jsonObject”:[{“name”:“YanYeFa”,“age”:18}]}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值