我得到了一個基於用戶輸入定義季節的方法。 例如:1/6 =冬季 它的工作原理,但似乎應該有一個更簡單的方法來做到這一點,而不是所有的代碼。有什麼建議麼?我怎樣才能縮短這一點?
public String getSeason()
{
String result = "UNKNOWN";
if (month == 1 && day >= 1)
{
result = "WINTER";
}
else if (month == 2 && day >= 1)
{
result = "WINTER";
}
else if (month == 3 && day <= 20)
{
result = "WINTER";
}
else if (month == 3 && day >= 21)
{
result = "SPRING";
}
else if (month == 4 && day >= 1)
{
result = "SPRING";
}
else if (month == 5 && day >= 1)
{
result = "SPRING";
}
else if (month == 6 && day <= 20)
{
result = "SPRING";
}
else if (month == 6 && day >= 21)
{
result = "SUMMER";
}
else if (month == 7 && day >= 1)
{
result = "SUMMER";
}
else if (month == 8 && day >= 1)
{
result = "SUMMER";
}
else if (month == 9 && day <= 22)
{
result = "SUMMER";
}
else if (month == 9 && day >= 23)
{
result = "FALL";
}
else if (month == 10 && day >= 1)
{
result = "FALL";
}
else if (month == 11 && day >= 1)
{
result = "FALL";
}
else if (month == 12 && day <= 20)
{
result = "FALL";
}
else if (month == 12 && day >= 21)
{
result = "FALL";
}
return result;
}
只需將多個測試合併爲一個:'if(month <3 || month == 3 && day <= 20 || month == 12 && day> = 21){result ='WINTER'} else {...'等一些測試是不必要的,例如'month == 2 && day> = 1'。 – 2013-02-10 17:29:16
對不起,我正在玩的代碼嘗試不同的選項,忘了改回那部分。 – SkyVar 2013-02-10 17:30:14