jsonObject.getString() 和jsonObject.optString()区别


//optJSONObject源码解析:    
      /**
      * Returns the value mapped by {@code name} if it exists and is a {@code
      * JSONObject}. Returns null otherwise.
      */
     public JSONObject optJSONObject(String name) {
         Object object = opt(name);
         return object instanceof JSONObject ? (JSONObject) object : null ;
     }
     //当返回值不是JSONObject对象时,返回值为null,不抛出异常;
 
 
//getJSONObject源码解析:
      /**
      * Returns the value mapped by {@code name} if it exists and is a {@code
      * JSONObject}.
      * @throws JSONException if the mapping doesn't exist or is not a {@code
      * JSONObject}.
      */
     public JSONObject getJSONObject(String name) throws JSONException {
         Object object = get(name);
         if (object instanceof JSONObject) {
             return (JSONObject) object;
         } else {
             throw JSON.typeMismatch(name, object, "JSONObject" );
         }
     }
     //当返回值不是JSONObject对象时,抛出异常;

你可能感兴趣的:(json,android,api,jsonObject.opt)