我正在准备一个使用递归和内存的斐波那契数列程序,但我无法使用对象将值传递给该方法。任何人都可以指出我的代码有什么问题
class fib_mem
{
int f []=new int[10];
int fibmem(int n)
{
if(n<1)
{
f[n]=n;
return n;
}
else
{
if(f[n-2]==-1)
{
f[n-2]=fibmem(n-2);
}
if(f[n-1]==-1)
{
f[n-1]=fibmem(n-1);
}
f[n]=f[n-2]+f[n-1];
return f[n-2]+f[n-1];
}
}
}
class abc
{
public static void main(String[] args) {
fib_mem obj=new fib_mem(5);
int a=obj.fibmem();
System.out.println(""+a);
}
}
最佳答案
对 abc 类使用以下代码:
class abc
{
public static void main(String[] args) {
// creating an object using constructor
fib_mem obj=new fib_mem();
// sending 5 as an argument to the method fib_mem
int a=obj.fibmem(5);
System.out.println(""+a);
}
}
数字 5 应该在方法 - fib_mem()
中传递,但不能像您那样在构造函数中传递 - fib_mem obj=new fib_mem(5);
。
关于java - 如何使用 Java 主类中创建的对象将值传递给方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58929468/