所以我正在寫一個叫做getThanksgiving
的方法。它按原樣工作,它是一個更大的班級的一部分,但我需要如何使其更有效的建議。 getWeekDay
方法只是返回11月1日星期幾在用戶輸入年份。如何使此方法更高效?
public String getThanksgiving(){
String a = getWeekDay(11, 1);
int offset = 0;
if(a.equals("Friday")){
offset = 7;
}
if(a.equals("Saturday")){
offset = 6;
}
if(a.equals("Sunday")){
offset = 5;
}
if(a.equals("Monday")){
offset = 4;
}
if(a.equals("Tuesday")){
offset = 3;
}
if(a.equals("Wednesday")){
offset = 2;
}
if(a.equals("Thursday")){
offset = 1;
}
int date = 21 + offset;
thanksgiving = "Thursday, November " + date;
return thanksgiving;
}
我試着將它重寫爲for循環,但它不工作。
public String getThanksgiving(){
String a = getWeekDay(11, 1);
int offset = 8;
String[] wTable = {"Friday", "Saturday", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday"};
for(int i = 1; i < 8; i++){
if(a.equals(wTable[i - 1])){
offset --;
}
}
}
此外,抵消和添加21的想法正是我的老師希望我們做的事情。提前致謝!
那麼,您允許使用哪些java構造?枚舉?地圖?或只有字符串,如果是和循環? – maasg