我试图编写一个程序,该程序获取两个用户并计算它们之间的数字总和(加上自己的)。但是我遇到了一个错误!这是我的代码:
import java.util.Scanner;
public class ForLoop {
public static void main(String[] args) {
int sum =0;
System.out.print("Enter first number: ");
Scanner myScanner = new Scanner(System.in);
boolean firsttest;
if(firsttest = myScanner.hasNextInt()) {
int firstNumber = myScanner.nextInt();
System.out.print("Enter second number: ");
boolean secondtest;
if(secondtest = myScanner.hasNextInt()) {
int secondNumber = myScanner.nextInt();
for(firstNumber ; firstNumber <= secondNumber ; firstNumber++) {
sum = sum + firstNumber ;
}
}else {
System.out.println("Second number is not correct format.");
}
}else {
System.out.println("first number is not correct format.");
}
System.out.println("total= " + sum);
}
}
错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Syntax error on token "firstNumber", ++ expected after this token
at ForLoop.main(ForLoop.java:16)
您不需要此处的for循环的第一部分。该值已经定义,并初始化int firstNumber = myScanner.nextInt();
因此,您想要
for( ; firstNumber <= secondNumber ; firstNumber++) {
sum = sum + firstNumber ;
}
看起来很奇怪,所以请尝试一段循环
while(firstNumber <= secondNumber) {
sum = sum + (firstNumber++);
}
另外, sum += firstNumber++
也有效
更改
for(firstNumber ; firstNumber <= secondNumber ; firstNumber++)
to
for(; firstNumber <= secondNumber ; firstNumber++)