私のJavaアプリケーションには、たった1つのアクションを決定する膨大な条件があります。私の質問は、見栄えを良くする方法です (私は NetBeans を使用しているので、コードの書式設定機能によって壊れないソリューションを好みます)。また、if/elseステートメントの量をできるだけ少なくしたいと思います。これにより、高速になると思います。
元のコードがめちゃくちゃだったので、アクション ダイアグラムを作成しました: . 遊びたい場合はコピーしてください。この図は、Google ドキュメントを使用して作成したため、 UML構文に関して完全ではないことに注意してください。
これはコードです:
if (!config.get("checkForSpecials") || event.isNotSpecial()) {
if (config.get("filterMode").equals("blacklist")) {
if (!itemFilter.contains(event.getItem().getName())) {
item.process();
}
} else if (config.get("filterMode").equals("whitelist")) {
if (itemFilter.contains(event.getItem().getName())) {
item.process();
}
} else {
item.process();
}
}
気に入らない点が 2 つあります。条件が明確でないこと (特に、完全なメソッド名と構成文字列を展開する場合) と、プロセス メソッド呼び出しが 3 回存在することです。