JSONObject对象的optXXX和getXXX的区别

今天在用org.json这个包解析json的时候


有两个方法getInt()和optInt()


把源代码拿出来一下


getInt("key")  取值 不存在 或者类型不对 报错

optInt("key")  取值 不存在 返回默认值


    public int getInt(String key) throws JSONException {
        Object object = this.get(key);
        try {
            return object instanceof Number ? ((Number) object).intValue()
                    : Integer.parseInt((String) object);
        } catch (Exception e) {
            throw new JSONException("JSONObject[" + quote(key)
                    + "] is not an int.");
        }
    }

    public int optInt(String key) {
        return this.optInt(key, 0);
    }


getDouble("key")  取值 不存在 或者类型不对 报错

optDouble("key",0)  取值 不存在 返回默认值

你可能感兴趣的:(JAVA)