所以这是一个非常基本的代码:
public class Problem14 {
public static void main(String[] args) {
long sumOfSquares = 0;
long squareOfSums = 0;
for(int i = 0; i < 100; i++) {
sumOfSquares += (i * i);
}
for(int i = 0; i < 100; i++)
squareOfSums += i;
}
squareOfSums = squareOfSums * squareOfSums;
long diff = sumOfSquares - squareOfSums;
System.out.println(diff);
}
}
Problem14.java:13: error: <identifier> expected
squareOfSums = squareOfSums * squareOfSums;
^
Problem14.java:15: error: <identifier> expected
System.out.println(diff);
^
Problem14.java:15: error: <identifier> expected
System.out.println(diff);
^
Problem14.java:17: error: class, interface, or enum expected
}
^
4 errors
我不知道为什么我会收到这些错误。这是一个非常基本的代码!
我无法调试,因为我收到的错误是我的代码没有主要的!
答案 0 :(得分:4)
在第二个{
循环后,您错过了一个开头for
:
for(int i = 0; i < 100; i++) {
// Here ---------------------^
squareOfSums += i;
}
一般情况下,当您看到意外错误时,通常意味着包围不平衡或缺少分号。
答案 1 :(得分:0)
调试此类编译器错误的一种方法是注释掉方法中的所有代码。然后一次取消注释每一行(或与for循环或if语句一样的块)并编译,直到收到错误消息。这将有助于缩小问题所在。