android如何应对接口数据的变化而导致的程序崩溃?
ringa_lee
ringa_lee 2017-04-17 16:16:47
[Android讨论组]
    daily_forecast: [
{
astro: {
sr: "06:14",
ss: "18:12"
},
cond: {
code_d: "103",
code_n: "104",
txt_d: "晴间多云",
txt_n: "阴"
},
date: "2016-03-15",
hum: "45",
pcpn: "0.0",
pop: "2",
pres: "1019",
tmp: {
max: "15",
min: "6"
},
vis: "10",
wind: {
deg: "126",
dir: "东南风",
sc: "3-4",
spd: "12"
}
}
   

比如json解析时,其中某个json字段没有了,再写get方法会有NullPointerException,该如何处理?

ringa_lee
ringa_lee

ringa_lee

全部回复(7)
巴扎黑

try catch 不行吗?

另外,JSON操作中除了get系列方法,还有opt系列方法,这个系列的方法主要应对可选参数的获取,当获取的参数不存在时,会返回默认值而不是抛出异常。

黄舟

get到null的时候不会奔溃,是你用这个值的时候奔溃吧,你在get的时候判断下呗

高洛峰

一般不会所有的数据都为null,把可能为null的数据处理下就可以了。

怪我咯

和后端沟通好数据结构?

PHP中文网

用gson解析吧,某个字段没有值的话,gson解析成对象时会赋默认值

迷茫

经验告诉我,能解析成String的绝不要解析为int、float、long

PHP中文网

Gson方式

Jackson方式

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号