在Java中构建JSONObject而不抛出异常

时间:2015-06-30 09:18:33

标签: java json

在Java中是否有办法构建JSONObject而不必处理异常?目前我正在使用默认构造函数,但这会强制我在代码中放置try / catch块。因为在其余的代码中我使用" opt" get的版本,检查返回值是否为null,有没有办法以相同的方式构建对象? (也就是说,某种构造函数如果不能从字符串构建json那么返回null。)

示例:

         try {
               JSONObject temp = new JSONObject(someString);
         } catch (JSONException e) {
               e.printStackTrace();
         }

我想做什么:

JSONObject temp = ??????(someString);
if(temp != null) {...}

1 个答案:

答案 0 :(得分:3)

您需要手动创建方法,因为任何解析器很可能会抛出一个或另一个Exception以防出现任何差异。尝试这样的事情: -

 public JSONObject verifyJSON(String inputString){
        JSONObject temp;
        try {
            temp = new JSONObject(someString);
      } catch (JSONException e) {
          temp = null;
            e.printStackTrace();

      }
        return temp;
    }

然后你可以这样做: -

JSONObject temp = verifyJSON(someString);
if(temp != null) {...}