如何在Java中读取同一行上的多个输入?

问题描述 投票:0回答:1

因此,我尝试使用扫描仪从一行中读取所有输入,然后获取值并找到第二大输入。我将使用数组BUT我不允许。

我根本无法解决它。这应该很容易,但我不知道。

public class SecondLargest {

public static void main(String[] args) {
    {
        int largest = 0;
        int secondLargest = 0;
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter integers: ");
        int numbers = sc.nextInt();
        largest = numbers;

        while (sc.hasNextInt()) {
            if (numbers > largest) {
                secondLargest = largest;
                largest = numbers;
            } else if (numbers > secondLargest) {
                secondLargest = numbers;
            }
        }
        System.out.println("Second largest number is: " + secondLargest);
        sc.close();

    }
}
java java.util.scanner
1个回答
0
投票
您需要添加一行:

while (sc.hasNextInt()) { numbers = sc.nextInt(); if (numbers > largest) { // further code here

但是一旦执行此操作,您将陷入无限循环,因为用户无法停止输入数字。

为此,您可以选择一个破坏条件。

希望这会有所帮助。祝你好运。

© www.soinside.com 2019 - 2024. All rights reserved.