声明双重错误

时间:2013-04-02 15:33:43

标签: java

我有代码:

double myVar = 4000000;

然而,java返回一个值,说:“令牌上的语法错误”;“,{此符号之后的预期”

连连呢?

干杯!

完整代码:

public class FibonacciSum {

double a = 1;
double b = 1;

double sum = 0;
double evenSum = 0;

double target = 4000000; 

while(sum < target) {

    sum = a + b;
    a = b;
    b = sum;

    if(sum % 2 == 0)
        evenSum += sum;

}

System.out.println(evenSum);

}

4 个答案:

答案 0 :(得分:2)

什么是代码上下文?

最有可能的是,您已将此行置于不适当的位置,例如进入方法。该行应该存在于方法或至少是类定义中。

Standalone,这不是有效的Java!不过,您可能可以在bean shell中使用它。

修改后更新:您的代码缺少方法

答案 1 :(得分:1)

你没有方法体。您正在尝试直接在类中运行代码。

将代码包装在main方法中:

public class FibonacciSum {

    public static void main(String...args) {
        double a = 1;
        double b = 1;

        double sum = 0;
        double evenSum = 0;

        double target = 4000000; 

        while(sum < target) {

            sum = a + b;
            a = b;
            b = sum;

           if(sum % 2 == 0)
           evenSum += sum;

        }

        System.out.println(evenSum);
    }

}

答案 2 :(得分:1)

没有必要将一个类放在main方法中。

public class FibonacciSum {
    public static void main(String[] args) {
        double a = 1;
        double b = 1;
        double sum = 0;
        double evenSum = 0;
        double target = 4000000; 
        while(sum < target) {
            sum = a + b;
            a = b;
            b = sum;
            if(sum % 2 == 0)
                evenSum += sum;
        }
        System.out.println(evenSum);
    }
}

答案 3 :(得分:0)

我已经测试了您的代码

class Tester
{
    public static void main(String[] args) {
        double myVar = 4000000;
        System.out.println(myVar);
    }
}

输出为4000000.0