【发布时间】:2014-03-21 22:26:52
【问题描述】:
我正在尝试编写一个程序,该程序将不断向用户询问整数,直到他们输入一个不是整数的值,此时程序停止。
这是我目前所拥有的:
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();)
可能是什么问题?
【问题讨论】:
-
有命名约定,变量以小写字符开头,类以大写字母开头。这样代码就更容易阅读了。