求助:关于阿里巴巴的JSONObject的疑问

先展示测试运行代码(部分)

import com.alibaba.fastjson2.JSONObject;
System.out.println("=====");
JSONObject jsonObject = new JSONObject();
System.out.println(jsonObject);
System.out.println(jsonObject.isEmpty());
System.out.println(jsonObject.size());

System.out.println("=====");
jsonObject.put("data",new JSONObject().put("value1",1));
System.out.println(jsonObject);
System.out.println(jsonObject.isEmpty());
System.out.println(jsonObject.size());
for (String key : jsonObject.keySet()) {
    Object value = jsonObject.get(key);
    System.out.println("Key: " + key + ", Value: " + value);
}

System.out.println("=====");
JSONObject data =new JSONObject();
jsonObject.put("data",data.put("value2",2));
System.out.println(jsonObject);
System.out.println(jsonObject.isEmpty());
System.out.println(jsonObject.size());
for (String key : jsonObject.keySet()) {
    Object value = jsonObject.get(key);
    System.out.println("Key: " + key + ", Value: " + value);
}
JSONObject dataJson1 = jsonObject.getJSONObject("data");
System.out.println(dataJson1);

System.out.println("=====");
data.put("value3",3);
jsonObject.put("data",data);
System.out.println(jsonObject);
System.out.println(jsonObject.isEmpty());
System.out.println(jsonObject.size());
for (String key : jsonObject.keySet()) {
    Object value = jsonObject.get(key);
    System.out.println("Key: " + key + ", Value: " + value);
}
JSONObject dataJson2 = jsonObject.getJSONObject("data");
for (String key : dataJson2.keySet()) {
    Object value = dataJson2.get(key);
    System.out.println("Key: " + key + ", Value: " + value);
}

运行结果

=====
{}
true
0
=====
{}
false
1
Key: data, Value: null
=====
{}
false
1
Key: data, Value: null
null
=====
{"data":{"value2":2,"value3":3}}
false
1
Key: data, Value: {"value2":2,"value3":3}
Key: value2, Value: 2
Key: value3, Value: 3

我的疑问

为什么value1没有成功添加?

为什么value2先出现和value1相同的情况,显示没有成功添加,但在value3成功添加后又出现了?

如果出现添加value1和value2的类似错误,如何判断JSONObject为null或者没有键值对?

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值