私のJava for loop
チェックを続ける:addResult()
は、いくつかのJava map
に結果を追加している場合は、カスタムメッセージを使用してJavaのスロー例外を交換して<code>ids() String[] array</code>に異なる<code>id</code>ため
BackTest.java
.....
for (String id: ids()) {
//..do something
addResult(result(id));
}
。ここでid does not exist
場合、すなわちHTTP status!=200
次のコードに示すように、私は新しい例外をスローしています:最初のIDであれば、
Api.Java私の最初のfor
ループで今
......
if (status != 200) {
String error = "No additional error message received";
if (result != null && result instanceof JSONObject) {
JSONObject obj = (JSONObject) result;
if (obj.containsKey("error")) {
error = '"' + (String) obj.get("error") + '"';
}
}
throw new ApiException(
"API returned HTTP " + status +
"(" + error + ")"
);
}
ループdoes not exist
、次に例外をスローして、my entire process to fail
となり、further ids as a part of id array
のチェックに失敗します。配列内の最初のIDで失敗しても、コードは引き続きIDを確認する必要がありますか?
throw new exception
をtry-catchブロックに置き換えることができます。良い例があります。
例外をキャッチして、 'try' /' catch'を使って例外を処理できます。それはあなたが求めていることですか? – immibis
ええ、あなたは正しいです。 –
それで 'try {addResult(result)};} catch(ApiException e){e.printStackTrace();}'? – immibis