[問題] Scanner被忽略?

看板java作者 ( )時間17年前 (2008/10/12 15:56), 編輯推噓1(105)
留言6則, 2人參與, 最新討論串1/1
寫了以下的動作 XXX a = new XXX(); XXX b = new XXX(); String name=" "; double num = 0.0; Scanner input = new Scanner(System.in); System.out.println("a's name = ?"); name = input.nextLine(); a.setName(name); System.out.println("a's number = ?"); num = input.nextDouble(); a.setNum(num); System.out.println("b's name = ?"); name=input.nextLine(); //問題在這行 b.setName(name); System.out.println("b's number = ?"); num = input.nextDouble(); 當我在執行的時候 a的num輸入完 接著應該是要讓我輸入b的name 但是系統直接跳過 出現的是 b's name = ? b's number = ? 我就無法輸入b's name了 想請問到底是怎麼一回事 怎麼會被忽略Q_Q -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.15.18

10/12 16:52, , 1F
用next method把換行吃掉
10/12 16:52, 1F

10/12 19:04, , 2F
可以講解清楚一點嗎~"~ 是在a的num後面在加上input.next() ?
10/12 19:04, 2F

10/12 19:13, , 3F
我猜測一樓大大的意思是把nextLine()換成next()?
10/12 19:13, 3F

10/12 19:17, , 4F
這樣做之後就正常了 但因為nextLine是老師上課用到的方法
10/12 19:17, 4F

10/12 19:20, , 5F
想請問其中method的正確用法 以及為何會跳行
10/12 19:20, 5F

10/12 20:26, , 6F
感謝s大幫我解答
10/12 20:26, 6F
文章代碼(AID): #18yQsqbz (java)