JSONObject #getString(String string) 空值(null)问题

本文记录了在Android平台上使用JSONObject解析特定JSON数据时遇到的问题。当JSON字段值为null时,getString()方法不会返回null对象,而是返回字符串null。文章通过实例展示了此行为,并提供了源码解释。

今天在android4.4.2(android-19)平台上做Json数据解析的时候碰到了这样一个问题:

返回的数据为:{"message":null}

当使用:JSONObject jsonObj = new JSONObject(jsonMessage);

String message=jsonObj.getString("message");

本以为message 是空值(null)

结果总不能如愿,最后发现:getString(),如果value是空值,那么这个方法会返回一个“null"字面量,而不是null对象。


源码:

    /**
     * Returns the value mapped by {@code name} if it exists, coercing it if
     * necessary.
     *
     * @throws JSONException if no such mapping exists.
     */
    public String getString(String name) throws JSONException {
        Object object = get(name);
        String result = JSON.toString(object);
        if (result == null) {
            throw JSON.typeMismatch(name, object, "String");
        }
        return result;
    }


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值