亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使兩個輸入在同一個循環下工作?

如何使兩個輸入在同一個循環下工作?

慕尼黑5688855 2023-04-26 14:29:47
我正在嘗試解決尋找具有 5 年以上經驗的人的基本問題。但是代碼不是那樣運行的。這是為了在同一個 for 循環中運行兩個用戶輸入命令:Scanner s = new Scanner(System.in);int n = s.nextInt();for (int i = 0; i <= n; i++) {    String name = s.nextLine();    System.out.println("enter experience");    int e = s.nextInt();    if (e > 5) {    } else {    }}預期結果是擁有 5 年以上經驗的人數,但實際情況是代碼僅要求輸入經驗。
查看完整描述

3 回答

?
墨色風雨

TA貢獻1853條經驗 獲得超6個贊

你用的時候nextInt()直接回車對不對?實際發生的是 nextInt() 接受你的整數輸入,你按下 enter,現在這個新行被消耗String name = s.nextLine();并且代碼立即轉到您的System.out.println("enter experience");


你應該做的只是簡單地在循環中添加另一個 s.nextLine() 就像


Scanner s = new Scanner(System.in);

                int n = s.nextInt();

                String name = s.nextLine();


                for (int i = 0; i <= n; i++) {

                        s.nextLine(); // put this here 

                        System.out.println("enter name");

通過這種方式,您的新線路鍵將被這條新語句使用,您現在可以輸入您的姓名。


查看完整回答
反對 回復 2023-04-26
?
POPMUISE

TA貢獻1765條經驗 獲得超5個贊

我想你要做的是比較用戶注冊后的經驗年限。如果是這種情況,那么您需要將用戶及其統計信息存儲在某個地方,例如 HashMap 中,然后過濾該 HashMap。



查看完整回答
反對 回復 2023-04-26
?
紅糖糍粑

TA貢獻1815條經驗 獲得超6個贊

試試這個代碼:


Scanner s = new Scanner(System.in);

int n = Integer.parseInt(s.nextLine());


for (int i = 0; i <= n; i++) {

    String name = s.nextLine();

    System.out.println("enter experience");

    int e = Integer.parseInt(s.nextLine());


    if (e > 5) {


    } else {


    }

}


查看完整回答
反對 回復 2023-04-26
  • 3 回答
  • 0 關注
  • 216 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號