簡體   English   中英

Java-使用While循環失去第一個用戶輸入

[英]Java - losing first user input using a while loop

大家早上好,

我目前正在學習編碼/ Java。 我需要做的任務是: 制作一個需要用戶輸入並返回最高和最低條目的程序。 我必須使用while循環使其保持簡單。 目前,我得到了:

    System.out.println("Enter numbers, Q to finish: ");
    int largest = sc.nextInt();
    int smallest = sc.nextInt();

    while (sc.hasNextInt()) {
        int number = sc.nextInt();

        if(number > largest) {
            largest = number;
        }
        else if(number < smallest){
            smallest = number;
        }
    }
    System.out.printf("Largest: %d  Smallest: %d", largest, smallest);

問題在於它跳過了第一個用戶輸入。 經過一些測試,我發現當我僅輸入1個數字並按QI時會出現錯誤。 如果我輸入; 10-20-30,回報為; 最大:30最小:20

有人知道為什么它跳過第一個用戶輸入嗎?

替換以下兩行:

int largest = sc.nextInt();
int smallest = sc.nextInt();

int largest = sc.nextInt();
int smallest = largest;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM