java - 要求用户进行多次输入

标签 java java-io

我正在尝试编写一个程序,该程序将不断询问用户一个整数,直到他们输入一个不是整数的值,此时程序停止。

这是我目前所拥有的:

import java.util.Scanner;
import java.util.ArrayList;

public class InputStats {
    private static Scanner a;

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        ArrayList InputArray = new ArrayList();
        Boolean Running = true;
        System.out.println("Please type an integer. To stop enter a non integer value");
        while (Running) {
            a = Scanner.nextLine();
            if (!a.hasNextInt()) {
                Running = false;
            }
            else {
                InputArray.add(input.nextLine());

        }

            System.out.println(InputArray);
        }

    }
}

但是,使用这段代码我收到了错误:

error: non-static method nextLine() cannot  be referenced from a static context (for the line a = Scanner.nextLine();)

error: incompatible types (for the line a = Scanner.nextLine();)

可能是什么问题?

最佳答案

String str = input.nextLine();

您根本不需要扫描仪 a。只需将对它的所有引用替换为对 input 的引用即可。

关于java - 要求用户进行多次输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21916942/

相关文章:

java - 关于 socket.startHandshake();在 java

java - 在 Java 中处理 map 的 map

java - Java finalize方法出现死循环或死锁时Finalizer线程会做什么

FileWriter和BufferedWriter之间的Java区别

java - RxJava : Filtering a List in an Observable (in place)

Java套接字,简单的多人游戏,发送数据

java - 实现 Closeable 或实现 AutoCloseable

java - 使用具有完整路径的 FileWriter

java - 为什么会抛出此异常以及如何从中恢复?

java - 在 Java 中关闭嵌套流和编写器的正确方法