扫码关注官方订阅号
当JSONObject.getString("name")中name字段为null时,为什么会直接赋值为字符串"null",而不是null?
认证高级PHP讲师
从550行可看出调了get方法(386)。从get方法中可以看出,对结果作为判断,如果为null,就抛出异常提示对应的键没有值说明你的解析是有问题的,可以帮助开发者发现问题,假设可以返回值可以为null,那么就有两种情况:1、压根就没有这个键。2、有这个键但值为null。
所以简化处理了,当然它完全可以在为null的情况下通过has方法判断这两种情况。
注意: JSONObject中有到少有两种取值方法一个是getXXX,一个是optXXX,opt操作,它一直是安全的,即使类型不对也不会报错,还可以自定义出错时的默认值,但get不一样,get的正确性需要你自己来保证。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
从550行可看出调了get方法(386)。
从get方法中可以看出,对结果作为判断,如果为null,就抛出异常提示对应的键没有值说明你的解析是有问题的,可以帮助开发者发现问题,假设可以返回值可以为null,那么就有两种情况:
1、压根就没有这个键。
2、有这个键但值为null。
所以简化处理了,当然它完全可以在为null的情况下通过has方法判断这两种情况。
注意: JSONObject中有到少有两种取值方法一个是getXXX,一个是optXXX,opt操作,它一直是安全的,即使类型不对也不会报错,还可以自定义出错时的默认值,但get不一样,get的正确性需要你自己来保证。