这是我在java中的第一个程序,我没有找到像this one for C++这样的好网站,这对我来说很困惑,因为我刚刚开始编写java而我只是来自C ++。无论如何,关于此代码,有人可以解释如何修复此代码,因为包含Scanner
的行和/或如何简单地接收输入,因为我没有找到任何简单的方法来翻译cin >>
C ++
public class input {
public static void main(String[] args) {
double total = 0;
Scanner in = new Scanner(System.in);
System.out.println("As you enter numbers, they will be added.");
System.out.println("Entering a non-number will stop the program.");
while (in.hasNextDouble()) {
double n = in.nextDouble();
total = total + n;
System.out.println("The total is " + total);
}
}
}
答案 0 :(得分:2)
您的代码有效。请确保您拥有import java.util.Scanner
。在相关的说明中,使用Eclipse或Netbeans,因为他们会告诉你这一点。此外,您应该将类名称大写并将您的类放在包中而不是“默认包”中。我推荐“Head First Java”。
package sand1;
import java.util.Scanner;
public class Input {
public static void main(String[] args) {
double total = 0;
Scanner in = new Scanner(System.in);
System.out.println("As you enter numbers, they will be added.");
System.out.println("Entering a non-number will stop the program.");
while (in.hasNextDouble()) {
double n = in.nextDouble();
total = total + n;
System.out.println("The total is " + total);
}
}
}
运行时输出。我想我可能会认为这是一个错误,我可以用一个空白行进入,而不会结束。
run:
As you enter numbers, they will be added.
Entering a non-number will stop the program.
12.2
The total is 12.2
43
The total is 55.2
a
BUILD SUCCESSFUL (total time: 11 seconds)
答案 1 :(得分:0)
我正在工作但没有安装jdk,所以我无法编译并运行它。但是,快速浏览一下,看起来你唯一可能遇到的问题是打破扫描仪。输入几个数字后,尝试按 ctrl - d - 这应该表示输入结束。
答案 2 :(得分:0)
正如Borealid所说,你需要在类的顶部添加以下行以使其编译:
import java.util.Scanner;
另请注意,按照惯例,java类使用大写字符Input命名,而不是输入。
最后,您可以通过System.in.read()直接获取输入,并对System.in
获取read()方法的其他重载排列。答案 3 :(得分:0)
查看Java Tutorials,它们对初学者来说非常好