回到我有,我下面創建以下toString()方法很簡單的問題。如果字是{蘋果,香蕉,葡萄}的內容的ArrayList中,我只是wonderning如果方法:錯誤的方法
public String toString()
{
for (int d = 0; d < words.size(); d++)
{
return "The word: " + words.get(d);
}
return "";
}
將返回:
The word: apple
The word: banana
The word: grape
,我問這個問題是什麼原因因爲當我中省略行:
return "";
我得到一個錯誤,說缺少return語句,所以我的電腦可能無法識別return語句:
"return "The word: " + words.get(d);"
,而是返回的:
The word: apple
The word: banana
The word: grape
這將返回:
null or ""
我不知道這是否是必要的,但我也只是把我有代碼之前我得到了錯誤遺漏返回語句。
public String toString()
{
for (int d = 0; d < words.size(); d++)
{
return "The word: " + words.get(d);
}
}
確切的錯誤是一個紅色的線,第二個到最後一個圓括號。確切的錯誤信息是:「缺少return語句」
更新1:
我真的很感激所有幫助和代碼,我可以得到建設性的批評。我希望我沒有把這個簡單的問題變成一個太複雜的問題。非常感謝你:)
更新2:
我離開那麼多的音符遺憾。然而,我只是想知道這是否是一個常見的問題,你們中的任何一個人看到了很多,因爲在課堂上這似乎很多,教師助理不能回答這個問題。再次感謝:)
你的方法似乎沒有什麼意義,因爲它無法弄清楚_which_果它應該正在印刷,因此它正在迭代所有這些。至於錯誤,編譯器檢測到如果'for'循環不應該執行,那麼在循環之後必須有一個return語句。當你刪除'回報「」',你打破了代碼。 –
你爲什麼要在循環中放置一個return語句?這意味着,你第一次去通過循環,你從方法返回,你永遠不通過循環的休息去吧。返回值的方法只返回一個值;你是怎麼想到的方法是要返回三個不同的值? – ajb
回答你最後的問題:(1)我在這裏看到了其他幾個帖子,提問者用這樣的「返回」語句編寫了一個循環,並且不明白爲什麼它是錯誤的。 (2)不能回答這個問題的人不應該是教學助理 - 至少在計算機科學課上。 (如果他們的英語點亮TA這是我OK。) – ajb