[問題] 函式還沒執行完程式就結束了

看板java作者 (Doraemon)時間8年前 (2016/10/29 14:40), 編輯推噓0(008)
留言8則, 2人參與, 最新討論串1/1
如題 在練習物件時遇到了這個問題 原本的程式碼是 public void FirstCall(){ System.out.print("輸入字串:"); Str = in.InputStr(); System.out.print("起始位置:"); Pos = in.InputPos(); System.out.print("新字串:"); NewString = in.InputNewString(); } 但是這樣打我只輸入了字串跟起始位置 程式就結束了 但如果改成 public void FirstCall(){ System.out.print("輸入字串:"); Str = in.InputStr(); System.out.print("新字串:"); NewString = in.InputNewString(); System.out.print("起始位置:"); Pos = in.InputPos(); } 或是 public void FirstCall() { Scanner input= new Scanner(System.in); System.out.print("輸入字串:"); Str = in.InputStr(); System.out.print("起始位置:"); Pos = in.InputPos(); System.out.print("新字串:"); NewString = input.nextLine(); } 這樣子就沒有問題了 想請問各位大大這是甚麼原因呢 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.120.249.99 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1477723247.A.8EC.html

10/29 16:26, , 1F
InputStr()怎麼實作?I大寫。
10/29 16:26, 1F

10/29 17:03, , 2F
10/29 17:03, 2F

10/29 17:08, , 3F
In in = new In();
10/29 17:08, 3F

10/29 22:06, , 4F
老問題又是吃到回車或所謂換行字元。
10/29 22:06, 4F

10/29 22:07, , 5F
實作可以判斷如果字串長度為零則迴圈等輸入不回傳。
10/29 22:07, 5F

10/30 00:07, , 6F
請問p大 什麼是吃到回車或換行字元呢@@
10/30 00:07, 6F

10/30 10:18, , 7F
PC的標準輸入之一是鍵盤,吃了Enter鍵代表的字元。
10/30 10:18, 7F

10/30 14:53, , 8F
感謝P大解說
10/30 14:53, 8F
文章代碼(AID): #1O54HlZi (java)
文章代碼(AID): #1O54HlZi (java)