我有一個字符串數組字符串數組多個對象
String[] weekDays
平日表示星期幾。對於如
{1, 2, 4} means Monday, Tuesday, Thusday
{2,5,6,7} means Tuesday, Friday, Saturday, Sunday
我代表7天星期七個布爾和需要設置true或false平日的基礎上。
我的代碼
private static void setWeekDays(final Object object, final String[] weekDays) {
for (String day : weekDays) {
if(day.equalsIgnoreCase("1")) {
object.setMonday(true);
} else if(day.equalsIgnoreCase("2")) {
object.setTuesday(true);
} else if(day.equalsIgnoreCase("3")) {
object.setWednesday(true);
} else if(day.equalsIgnoreCase("4")) {
object.setThrusday(true);
} else if(day.equalsIgnoreCase("5")) {
object.setFriday(true);
} else if(day.equalsIgnoreCase("6")) {
object.setSaturday(true);
} else if(day.equalsIgnoreCase("7")) {
object.setSunday(true);
}
}
}
但它的if else語句和執行此我明確地將所有布爾是假的之前那麼多。 有沒有其他簡單的方法來做同樣的事情?任何建議?
+1表示努力。例如,我想看看'setSunday'是什麼。它看起來像那些'set ..'功能可能對每一天都是不必要的。如果你可以傳遞一個'set ...'方法的字符串值,它可以完成所有的這一行代碼,而不是if或switch。 –
基本上數據庫中有7個字段相對於七天來設置所有這些字段有七種方法。 –
七種方法過多。您應該能夠根據傳遞的值以及數據庫模式的更多信息隱式引用這些數據庫字段。將您設置的方法的代碼添加到OP。 –