做一些你知道会引发异常的事情是不好的形式(假设你处理得当)?例如:
JSONArray stuff = new JSONArray();
JSONArray otherStuff = new JSONArray();
try{
for(i = 0; i < stuff.length(); i++){
JSONObject a = stuff.getJSONObject(i);
otherStuff.add(a);
}
} catch (JSONException e){
Log.e("FAIL", e.toString());
}
//more code adding things to array later on
在这种情况下,当您第一次运行序列时,数组将为空,getJSONObject 会抛出异常,因为索引 i 处没有任何内容。但是,稍后,如果将事物添加到数组中,则不会引发异常。
当然,这段代码只是一个假设(我相信有更好的例子——有人可能有),但就形式/风格而言,是否可以故意抛出异常?还是应该避免将它们全部放在一起?