下面的代碼給了我一個錯誤,指向語句「return mon;」中的'm'。它說明「變量mon可能沒有被初始化」,當它在這個方法的開始非常清楚地初始化時。它必須是超級簡單的東西,我只是不明白!謝謝。爲什麼java說我沒有初始化變量?
public String monthName(int month)
{
String mon;
switch (month)
{
case 1:
mon = "January";
break;
case 2:
mon = "February";
break;
case 3:
mon = "March";
break;
case 4:
mon = "April";
break;
case 5:
mon = "May";
break;
case 6:
mon = "June";
break;
case 7:
mon = "July";
break;
case 8:
mon = "August";
break;
case 9:
mon = "September";
break;
case 10:
mon = "October";
break;
case 11:
mon = "November";
break;
case 12:
mon = "December";
break;
}
return mon;
}
你需要一個'switch'的'default'部分(或者明確地初始化它)。 – Lion 2013-03-13 19:05:12
你總是可以返回「一月」,「二月」等,並有一個默認情況下處理它。不需要像這樣的臨時變量。 – 2013-03-13 19:06:41
「當它在這個方法的開始時被非常明確地初始化」......呃關心告訴我們在哪裏? – JamesB 2013-03-13 19:09:28