Я использую машину состояний, и код становится действительно многословным при тестировании на большое количество возможных состояний.
enum Mood {
HAPPY, SAD, CALM, SLEEPY, OPTIMISTIC, PENSIVE, ENERGETIC;
}
Есть ли способ сделать это:
if (currentMood == (HAPPY | OPTIMISTIC | ENERGETIC) {}
Вместо этого:
if (currentMood == HAPPY || currentMood == OPTIMISTIC || currentMood == ENERGETIC) {}
Или было бы лучше придерживаться целых чисел и флагов в этом случае?