次のコードスニペットは、より抽象的なアプリケーション例外ハンドラにリファクタリングすることを考えていますが、できるだけ最初に整理しておきたいと思います。androidの数値書式例外の処理を改善しました
このコードを改善したり、それをよりresuableにする方法上の任意の提案
int id = -1;
final StringBuilder errorMessage = new StringBuilder("Bad Input Value: ");
try {
id = Integer.parseInt(edtId.getText().toString());
} catch (final NumberFormatException e) {
errorMessage.append("Failed to parse id " + e.getMessage());
}
if (id < 0) {
errorToast(errorMessage.toString());
} else {
//go ahead an retreive values from database knowing the id has been parsed
//correctly to a positive int.
}
テキストフィールドに「-1」と入力した場合はどうなりますか? – home
それはゼロよりも小さくなるか、何か不足していますか? – Luke
この場合、errorMessage.toString()は空白の文字列になります。特に役に立ちません。 – Luke