MapやSetを使う
複数のステータスのいずれかに一致するか、という条件判定をひとつずつ実装するのは非効率だし、分かりやすさや見易さを犠牲にすると思います。
MapやSetに存在するかを判定することで見やすく、分かりやすくなるのではないかと。
例)
public class Test {
private static final Set<String> GOODS_SET;
static {
HashSet<String> map = new HashSet<String>();
map.add("りんご");
map.add("ぶどう");
map.add("なし");
map.add("もも");
map.add("みかん");
GOODS_SET = Collections.unmodifiableSet(map);
}
public static void main(String[] args) {
if (GOODS_SET.contains("りんご")) {
System.out.println("商品に存在します。");
} else {
System.out.println("商品に存在しません。");
}
}
}
条件分岐の名前で判定するので、分かりやすいと思います。
1点だけ難点を挙げるなら、テストで条件を網羅できたかが確認できないので、条件に含めているものが正しいのかをレビューできちんと確認する必要があるところです。