特定のインターフェイスを実装する一連のクラスがあり、一連のチェックボックスがあります。チェックボックスが選択されていない場合にエラーをスローしたい。少なくとも 1 つ以上のチェックボックスが選択されている場合、そのチェックボックスに関連付けられたオブジェクトを作成する必要があります。
これが私がやった方法です。
interface U { ... }
class A implements U { ... }
class B implements U { ... }
class C implements U { ... }
class Main {
//....
//....
public void findSelectedCheckBoxesAndCreateObjects() {
if(!(checkboxA.isSelected() || checkboxB.isSelected() || checkboxC.isSelected()) {
System.out.println("No checkboxes selected");
return;
}
//if any selected, create associated object
if(checkboxA.isSelected()) new A(file);
if(checkboxB.isSelected()) new B(file);
if(checkboxC.isSelected()) new C(file);
}
}
今、私は3つの問題を抱えています。
- これは単なるサンプル コードです。オリジナルには 8 つのチェックボックスとクラスがあり、さらに追加されます。
|| checkboxD.isSelected()
それをチェックするための新しいクラスがあるたびに追加し続けることはできません。- 同じこと。
if(checkboxD.isSelected()) new D(file);
クラスごとに追加し続けることはできません。
とてもエレガントではありません。冗長なコードを削除する何らかのループを作成できますか?
あなたの提案を教えてください。ありがとうございました。