我有一个EnumSet<Days>
,其中Days
是一周中所有日期的Enum
,从序号为0的星期日开始。我收到{{1}的整数},这是一个常量,表示星期日从1开始到星期六7点的星期几。我需要知道该整数表示的星期几是否在我的someCalendar.get(Calendar.DAY_OF_WEEK)
中。说:
EnumSet
private EnumSet<Days> selectedDays;
private final Days[] allDays = Days.values();
private boolean checkDayOfWeek(int day){
return (selectedDays.contains(allDays[day - 1]));
}
中的常量是在API中发布的,因此假设它们不会改变是合理的吗?有没有更优雅的解决方案,我没有看到?不论地点如何,它们都保持不变吗?我唯一的另一个想法是一系列丑陋的if语句。