我有一个 JSON 字符串,我要在其中添加多个变量。这里的问题是,有时并非所有数据都会输入某些内容,因此会返回 NullPointerException。
例如,下面是一些代码:
public static void main(String[] args) throws JSONException {
JSONObject obj = new JSONObject();
obj.put("att1", val1);
obj.put("att2", val2);
obj.put("att3", val3);
obj.put("att4", val4);
obj.put("att5", val5);
obj.put("att6", val6);
System.out.println(obj.toString());
}
这会起作用,因为我抛出了异常。然而,假设有一次我运行它,并且 val4 不存在,我将得到一个 JSONException 并且我的整个代码将停止。我真正想要的是让代码说“好吧,没有任何名为 val4 的内容,所以让我们忽略它并移至下一行代码。
我所知道的方法是使用连续的 if 语句(对于每个属性,我在尝试添加它之前检查它是否为空)或使用多个 try/catch。
我知道忽略错误是一个巨大的禁忌,所以与其说我想知道是否有一种方法可以忽略错误并继续执行下一行代码,有吗在输入之前检查每一行的好方法,如果有空值,则在继续之前忽略该行?
(尽管如此,我很乐意忽略这一代码块上的错误)
干杯,TIA, 凯什
最佳答案
看起来您只想在值不为空时添加该对。 JSONObject#putOpt
就是这样做的。
关于java - 处理异常和错误(错误是可以的),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16569644/