⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jsonobject.java

📁 很好的json数据处理格式
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
        return optBoolean(key, false);    }    /**     * Get an optional boolean associated with a key.     * It returns the defaultValue if there is no such key, or if it is not     * a Boolean or the String "true" or "false" (case insensitive).     *     * @param key              A key string.     * @param defaultValue     The default.     * @return      The truth.     */    public boolean optBoolean(String key, boolean defaultValue) {        try {            return getBoolean(key);        } catch (Exception e) {            return defaultValue;        }    }    /**     * Put a key/value pair in the JSONObject, where the value will be a     * JSONArray which is produced from a Collection.     * @param key   A key string.     * @param value A Collection value.     * @return      this.     * @throws JSONException     */    public JSONObject put(String key, Collection value) throws JSONException {        put(key, new JSONArray(value));        return this;    }    /**     * Get an optional double associated with a key,     * or NaN if there is no such key or if its value is not a number.     * If the value is a string, an attempt will be made to evaluate it as     * a number.     *     * @param key   A string which is the key.     * @return      An object which is the value.     */    public double optDouble(String key) {        return optDouble(key, Double.NaN);    }    /**     * Get an optional double associated with a key, or the     * defaultValue if there is no such key or if its value is not a number.     * If the value is a string, an attempt will be made to evaluate it as     * a number.     *     * @param key   A key string.     * @param defaultValue     The default.     * @return      An object which is the value.     */    public double optDouble(String key, double defaultValue) {        try {            Object o = opt(key);            return o instanceof Number ? ((Number)o).doubleValue() :                new Double((String)o).doubleValue();        } catch (Exception e) {            return defaultValue;        }    }    /**     * Get an optional int value associated with a key,     * or zero if there is no such key or if the value is not a number.     * If the value is a string, an attempt will be made to evaluate it as     * a number.     *     * @param key   A key string.     * @return      An object which is the value.     */    public int optInt(String key) {        return optInt(key, 0);    }    /**     * Get an optional int value associated with a key,     * or the default if there is no such key or if the value is not a number.     * If the value is a string, an attempt will be made to evaluate it as     * a number.     *     * @param key   A key string.     * @param defaultValue     The default.     * @return      An object which is the value.     */    public int optInt(String key, int defaultValue) {        try {            return getInt(key);        } catch (Exception e) {            return defaultValue;        }    }    /**     * Get an optional JSONArray associated with a key.     * It returns null if there is no such key, or if its value is not a     * JSONArray.     *     * @param key   A key string.     * @return      A JSONArray which is the value.     */    public JSONArray optJSONArray(String key) {        Object o = opt(key);        return o instanceof JSONArray ? (JSONArray)o : null;    }    /**     * Get an optional JSONObject associated with a key.     * It returns null if there is no such key, or if its value is not a     * JSONObject.     *     * @param key   A key string.     * @return      A JSONObject which is the value.     */    public JSONObject optJSONObject(String key) {        Object o = opt(key);        return o instanceof JSONObject ? (JSONObject)o : null;    }    /**     * Get an optional long value associated with a key,     * or zero if there is no such key or if the value is not a number.     * If the value is a string, an attempt will be made to evaluate it as     * a number.     *     * @param key   A key string.     * @return      An object which is the value.     */    public long optLong(String key) {        return optLong(key, 0);    }    /**     * Get an optional long value associated with a key,     * or the default if there is no such key or if the value is not a number.     * If the value is a string, an attempt will be made to evaluate it as     * a number.     *     * @param key   A key string.     * @param defaultValue     The default.     * @return      An object which is the value.     */    public long optLong(String key, long defaultValue) {        try {            return getLong(key);        } catch (Exception e) {            return defaultValue;        }    }    /**     * Get an optional string associated with a key.     * It returns an empty string if there is no such key. If the value is not     * a string and is not null, then it is coverted to a string.     *     * @param key   A key string.     * @return      A string which is the value.     */    public String optString(String key) {        return optString(key, "");    }    /**     * Get an optional string associated with a key.     * It returns the defaultValue if there is no such key.     *     * @param key   A key string.     * @param defaultValue     The default.     * @return      A string which is the value.     */    public String optString(String key, String defaultValue) {        Object o = opt(key);        return o != null ? o.toString() : defaultValue;    }    /**     * Put a key/boolean pair in the JSONObject.     *     * @param key   A key string.     * @param value A boolean which is the value.     * @return this.     * @throws JSONException If the key is null.     */    public JSONObject put(String key, boolean value) throws JSONException {        put(key, value ? Boolean.TRUE : Boolean.FALSE);        return this;    }    /**     * Put a key/double pair in the JSONObject.     *     * @param key   A key string.     * @param value A double which is the value.     * @return this.     * @throws JSONException If the key is null or if the number is invalid.     */    public JSONObject put(String key, double value) throws JSONException {        put(key, new Double(value));        return this;    }    /**     * Put a key/int pair in the JSONObject.     *     * @param key   A key string.     * @param value An int which is the value.     * @return this.     * @throws JSONException If the key is null.     */    public JSONObject put(String key, int value) throws JSONException {        put(key, new Integer(value));        return this;    }    /**     * Put a key/long pair in the JSONObject.     *     * @param key   A key string.     * @param value A long which is the value.     * @return this.     * @throws JSONException If the key is null.     */    public JSONObject put(String key, long value) throws JSONException {        put(key, new Long(value));        return this;    }    /**     * Put a key/value pair in the JSONObject, where the value will be a     * JSONObject which is produced from a Map.     * @param key   A key string.     * @param value A Map value.     * @return      this.     * @throws JSONException     */    public JSONObject put(String key, Map value) throws JSONException {        put(key, new JSONObject(value));        return this;    }    /**     * Put a key/value pair in the JSONObject. If the value is null,     * then the key will be removed from the JSONObject if it is present.     * @param key   A key string.     * @param value An object which is the value. It should be of one of these     *  types: Boolean, Double, Integer, JSONArray, JSONObject, Long, String,     *  or the JSONObject.NULL object.     * @return this.     * @throws JSONException If the value is non-finite number     *  or if the key is null.     */    public JSONObject put(String key, Object value) throws JSONException {        if (key == null) {            throw new JSONException("Null key.");        }        if (value != null) {            testValidity(value);            this.map.put(key, value);        } else {            remove(key);        }        return this;    }    /**     * Put a key/value pair in the JSONObject, but only if the key and the      * value are both non-null, and only if there is not already a member      * with that name.     * @param key     * @param value     * @return his.     * @throws JSONException if the key is a duplicate     */    public JSONObject putOnce(String key, Object value) throws JSONException {        if (key != null && value != null) {        	if (opt(key) != null) {                throw new JSONException("Duplicate key \"" + key + "\"");        	}            put(key, value);        }        return this;    }    /**     * Put a key/value pair in the JSONObject, but only if the     * key and the value are both non-null.     * @param key   A key string.     * @param value An object which is the value. It should be of one of these     *  types: Boolean, Double, Integer, JSONArray, JSONObject, Long, String,     *  or the JSONObject.NULL object.     * @return this.     * @throws JSONException If the value is a non-finite number.     */    public JSONObject putOpt(String key, Object value) throws JSONException {        if (key != null && value != null) {            put(key, value);        }        return this;    }            /**     * Produce a string in double quotes with backslash sequences in all the     * right places. A backslash will be inserted within </, allowing JSON     * text to be delivered in HTML. In JSON text, a string cannot contain a     * control character or an unescaped quote or backslash.     * @param string A String     * @return  A String correctly formatted for insertion in a JSON text.     */    public static String quote(String string) {        if (string == null || string.length() == 0) {            return "\"\"";        }        char         b;        char         c = 0;        int          i;        int          len = string.length();        StringBuffer sb = new StringBuffer(len + 4);        String       t;        sb.append('"');        for (i = 0; i < len; i += 1) {            b = c;            c = string.charAt(i);            switch (c) {            case '\\':            case '"':                sb.append('\\');                sb.append(c);                break;            case '/':                if (b == '<') {                    sb.append('\\');                }                sb.append(c);                break;            case '\b':                sb.append("\\b");                break;            case '\t':                sb.append("\\t");                break;            case '\n':                sb.append("\\n");                break;            case '\f':                sb.append("\\f");                break;            case '\r':                sb.append("\\r");                break;            default:                if (c < ' ' || (c >= '\u0080' && c < '\u00a0') ||                               (c >= '\u2000' && c < '\u2100')) {                    t = "000" + Integer.toHexString(c);                    sb.append("\\u" + t.substring(t.length() - 4));                } else {                    sb.append(c);                }            }        }        sb.append('"');        return sb.toString();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -