看板 java 關於我們 聯絡資訊
這是我的出錯訊息 http://i.imgur.com/wLg5VGR.jpg 今天在寫遞迴的練習時,想說課本題目給的條件有i=1和i>1兩個狀況,i=1時就結束遞迴 ,我一開始第九行只有寫else是可以運作的,但是我想想不對啊,假如別人輸入i<1時不 也是包含在else裡面,所以動手修改成else if(i>1)來確定條件,這時就出現照片裡的錯 誤訊息了,好像是少了大括號之類的問題可是我怎麼找都確定沒問題啊,印象中if,else if可以不一定要加else的,不知道是不是這個問題,還是我大括號真的少了或多了..... 先請前輩們開導了,謝謝 -- Sent from my Android -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.136.51.217 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1439057081.A.54B.html
pupuliao: 不需要 但是我建議所有的if 之中的內容要用{} 包起來 08/09 02:06
LPH66: 你的問題是函數沒有永遠回傳值, i<1 時兩個 if 都不會進 08/09 02:19
LPH66: 這種狀況你沒有 return, 錯誤訊息就在告訴你這件事 08/09 02:20
egaryer: Java考題就有if後沒用{}括起來的題目XD 08/09 02:33
iFEELing: if後面如果只有單行的話不用{} 08/10 00:35
kobebryin: 原來是沒有永遠回傳值,我大徹大悟了,另外以後if 後 08/10 01:39
kobebryin: 面我會注意加個{}的,謝謝各位前輩們的提點,小弟先謝 08/10 01:39
kobebryin: 過了 08/10 01:39
alchin7748: else if那行的else拿掉也能跑 重點就是你一定要給這 08/10 01:41
alchin7748: 個方法最基礎的回傳值 方法最後一行給個 return 0; 08/10 01:41
alchin7748: 應該就不會有錯誤訊息了 08/10 01:41