關於java輸入易錯點

鱼香炒肉丝發表於2024-10-27

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

相關文章