冇事喇,原來要係個大for之前加番句input.nextLine( );先得
啱啱試到
起input.nextLine() 之前define多次 input = new Scanner(http://System.in); 都OK
ok,
但係點解要加番句咁既野先可以打string既?
因為nextInt()只係讀左你個"2"
你拍enter嗰下個\n仲起buffer入面
然後你下個String a = input.nextLine();就會pass左個\n去你個 a度
所以你未打已經出error
(頭盔: 好似係)
sorry 錯左少少
啱啱test 過原來係連個2都仲起buffer
所以nextInt() 之後之前入既野全部會留起buffer, nextLine() 就會將buffer既野掟多次俾a 所以冇再叫你input
而nextLine() 完就會clear buffer
咁姐係將個2掉多次比個a?
所以先唔比我再input string?
係
你當係你input既野起過左嗰行code之後其實仲留起buffer
然後啲next乜乜乜全部都係起buffer拎野
buffer冇野先會停低叫你input
然後只有nextLine()係比較有責任心會起buffer拎完之後clear晒buffer入面啲野
原來nextLine咁有手尾
Btw唔該哂