如何修复“错误:找不到符号”[关闭]

问题描述 投票:-1回答:1

所以我写了这个函数,但对我来说,生活中无法解决它的问题。这是一个非常基本的功能,但当我尝试编译它时,我得到了

    LoopArraysLibrary.java:4: error: cannot find symbol
            for (var i=0, x=0, y=1, x1=0;i<5;i++)
                 ^
      symbol:   class var
      location: class LoopArraysLibrary
    1 error

这是功能:

public static int fib(int n) {
    for (var i=0, x=0, y=1, x1=0;i<5;i++)
    {
    return(x);
    x1=x;
    x=y;
    y=x1+y;
    }
}
java error-handling compiler-errors
1个回答
1
投票

Java中没有关键字或内置类型名称var。 (Java不是Javascript !!)

看起来这些变量需要是int,所以你可以声明这样的变量:

    for (int i=0, x=0, y=1, x1=0;i<5;i++)
        { ...

但是,这还不够,因为循环体中的第一个语句是

           return(x);

这将导致Java编译器说后面的语句是无法访问的代码。根据您要实现的内容,您的代码应该在循环之后返回。这意味着不应该将xyx1声明为循环的本地。

我会告诉你如何实现这个...并找到/修复另一个问题:-)


更新:从Java 10(2018年3月发布)开始,该语言支持var用于局部变量。

© www.soinside.com 2019 - 2024. All rights reserved.