Java奇怪的“printf错误:int不能是对象”?

Java奇怪的“printf错误:int不能是对象”?,java,compiler-errors,printf,syntax-error,Java,Compiler Errors,Printf,Syntax Error,我有以下简单的Java代码: package cal; import java.util.Scanner; public class cal { public static void main(String[] args) { Scanner input = new Scanner(System.in); int n1, n2, sum; System.out.print("enter f

我有以下简单的Java代码:

package cal;
import java.util.Scanner;

public class cal {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int n1,
            n2,
            sum;

        System.out.print("enter first: ");
        n1 = input.nextInt();

        System.out.print("enter second: ");
        n2 = input.nextInt();

        sum = n1 + n2;
        System.out.printf("sum is %d\n", sum);
    }
}
错误在printf,它需要'string,object[],我的'sum'是int,但它可以被视为一个对象吗


实际上,首先这段代码运行得很好,但在我对workplace的路径做了一些更改之后,代码开始出现此错误。

您使用的Java版本是什么?@user3552387我不这么认为。请重新检查。这是版本8更新5,我确信路径发生了变化。源代码符合性在1.4。@chrylis:我已将其更改为1.7,它又能工作了