String jsonStr = "{\"closeAnalysis\":\"test\",\"closeDate\":\"2018-11-27\",\"inspections\":\"\"}";
JSONObject object = JSON.parseObject(jsonStr);
TestClass testClass = JSON.parseObject(jsonStr, TestClass.class);
public class TestClass {
public List<Integer> inspections;
public String closeAnalysis;
public Date closeDate;
}
inspections传入值为空字符串“”,应当被解析为空数组,但是在上面字符串中没有空格的情况下解析报错。
经测试需要以上三个特定类型的字段同时存在的情况下才会报错,另外以下字符串也可以正常解析:
// 在closeAnalysis字段值后面添加空格
String jsonStr = "{"closeAnalysis":"test", "closeDate":"2018-11-27","inspections":""}";
// inspections字段转为正确的数组格式
String jsonStr = "{"closeAnalysis":"test","closeDate":"2018-11-27","inspections":[]}";
1条答案
按热度按时间wgxvkvu91#
@shiningvon "inspections传入值为空字符串“”,应当被解析为空数组",这个也不是规范操作。
@wenshao 温少看看,其他情况看起来比较诡异。