所以我写了这个功能,但对我来说,生活中的问题无法解决。这是一个非常基本的功能,但当我尝试编译它时,我得到了
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;
}
}
答案 0 :(得分:1)
Java中没有关键字或内置类型名称var
。 (Java不是Javascript !!)
看起来这些变量需要int
,所以你可以像这样声明变量:
for (int i=0, x=0, y=1, x1=0;i<5;i++)
{ ...
但是,这还不够,因为循环体中的第一个语句是
return(x);
这将导致Java编译器说后面的语句是无法访问的代码。根据您要实现的内容,您的代码应该在循环之后返回。这意味着不应将x
,y
和x1
声明为循环的本地。
我会告诉你如何实现这个......并找到/解决另一个问题: - )
更新:从Java 10开始(2018年3月发布),该语言支持局部变量var
。