nextLine()自動讀取了被next()去掉的Enter作為它的結束符,所以沒辦法給s2從鍵盤輸入值。經過驗證,發現其他的next的方法,如nextDouble() ,nextFloat() ,nextInt() 等與nextLine()連用時都存在這個問題,解決的辦法是:在每一個 next()、nextDouble() 、 nextFloat()、nextInt() 等語句之後加一個nextLine()語句,將被next()去掉的Enter等結束符過濾掉。
public class NextTest{
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("請輸入第一個字串:");
String s1 = input.next();
input.nextLine(); //接收結束符
System.out.print("請輸入第二個字串:");
String s2 = input.nextLine();
System.out.println("輸入的字串是:"+ s1 + " " + s2);
}
}
———————————————— 版權宣告:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連結和本宣告。
原文連結:https://blog.csdn.net/weixin_43895371/article/details/109013500