1

我在 Eclipse 中编写一个斐波那契序列,这是我的代码-

public class FibonacciAlgorithm {
    private int a = 0;
    private int b = 1;

    public FibonacciAlgorithm() {
    }

    public int increment() {
        int temp = b;
        b = a + b;
        a = temp;
        return value;
    }

    public int getValue() {
        return b;
    }
}

return value;它在行中显示错误value cannot be resolved to a variable。我没有看到任何其他错误。

4

4 回答 4

0

您的方法返回一个 int 变量,因此您必须定义并返回value一个 int

于 2013-01-23T16:22:21.383 回答
0

在哪里value定义?您返回的东西在任何地方都没有定义。

于 2013-01-23T16:16:42.313 回答
0

您没有定义“价值”,这是您的错误。我不记得确切的事情了,但我认为您不需要 a 和 b,我在我的代码存档中找到了这个,希望对您有所帮助。

public class Fibonacci
{
    public static long fibo(int n)
    {
        if (n <= 1) return n;
        else return fibo(n - 1) + fibo(n - 2);
    }

    public static void main() {
        int count = 5; // change accordingly, bind to input etc.
        int N = Integer.parseInt(count);
        for (int i = 1; i <= N; i++)
            System.out.println(i + ": " + fibo(i));
        }
}

如果您想保留自己的代码,请尝试返回“b”作为值。

于 2013-01-23T16:24:56.317 回答
0

我不确定你想做什么。如果你有“getValue”方法,我认为“increment”方法应该是无效的。当您想要当前的斐波那契值时,请使用“getValue”方法。

    public class FibonacciAlgorithm {

        private int a = 0;
        private int b = 1;     

        public FibonacciAlgorithm() {

        }

        public void increment() {
            int temp = b;
            b = a + b;
            a = temp;
        }

        public int getValue() {
            return b;
        }
于 2013-01-23T16:26:58.517 回答