我正在上一个在线MOOC学习Java,我唯一的问题是它来自芬兰的赫尔辛基大学,我住在美国所以在有限的时间我可以醒来在练习上寻求帮助.我目前的做法是向用户询问一个数字,然后在使用时将每个整数打印到该数字
while {
}
Run Code Online (Sandbox Code Playgroud)
声明
这是我目前的代码
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
int number = Integer.parseInt(reader.nextLine());
System.out.print("up to what number?:"+ number);
while (number<=number){
System.out.println(number);
number++;
}
}
Run Code Online (Sandbox Code Playgroud)
而它看起来正在做的是忽略了
while (number<=number) {
System.out.println(number);
Run Code Online (Sandbox Code Playgroud)
我的部分代码并直接进入
number++;
Run Code Online (Sandbox Code Playgroud)
我的代码的一部分我需要声明另一个int(变量)来存储值吗?课程具有评分测试用例的方式我不能简单地声明具有确定值的变量,因为它们运行几个测试用例,如正数和负数.有没有办法使用阅读器将值存储到两个单独的变量,以便它们可以相互比较,只打印数字到那个数字?
我也知道我错过了一个
Break;
Run Code Online (Sandbox Code Playgroud)
声明,但我不知道我会把它放在我有的代码中,我试图使用
} else {
break;
Run Code Online (Sandbox Code Playgroud)
但得到一个错误,说明我有一个没有if的别人.我正在使用netbeans,因为它是我的课程所必需的,因为服务器提交是通过TMC设置的.
考虑到它现在我确定它不会跳过while语句但只是继续打印因为它打印和增量用户输入也增加了因为我只有一个变量但我不知道我怎么会去将用户输入值存储在两个不同的变量中,我可以将它们与小于或等于语句进行比较,并在达到用户输入的数字后停止打印,在这种情况下,我不一定需要break语句,因为它会一旦打印到数字输入就停止.
回答:这是我最终想出的答案.
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
System.out.print("up to what number?:");
int numbers = 1;
int number = Integer.parseInt(reader.nextLine());
while (numbers <= number){
System.out.println(numbers);
numbers++;
} …Run Code Online (Sandbox Code Playgroud)