我需要再次运行我的/对象方法。这是否允许?我怎样才能做到这一点?如何多次执行Java方法?
1
A
回答
1
递归?当然java支持它
public int foo (int param) {
if (param == 0)
return 0;
return param + foo (--param);
}
public static void main (String[] args) {
System.out.println (foo (5));
}
0
我想你想用recursion。
5
不知道你正在尝试做的,但你可以简单地调用从自身的方法(这就是所谓的recursion):
void recursiveMethod() {
System.out.println("Called the recursive method");
recursiveMethod();
}
调用该方法将打印“叫递归方法”行了,直到你得到一个StackOverflowError。
+2
+1 - 很好的使用StackOverflow = P – 2010-01-11 16:32:54
3
您可以从内部再次调用该方法(也称为递归)。所以,像这样:
public void myMethod() {
// Do some stuff here.
// Possible conditional statement...
if(restart) {
myMethod(); // This will "restart" the method.
}
}
如果你有一个更具体的例子,你在想什么,这可能有助于改善你的问题。
+0
我会认为do-while/for(;;)循环会更合适。 – 2010-01-11 16:33:01
0
看到,因为你要的对象的引用(你已经跑法), 简单地重复以前的说法:
myDog.bark(); // bark once
myDog.bark(); // bark again
你的意思重新启动的方法是什么?在中,再次调用该方法? – 2010-01-11 16:28:50
要理解递归,您必须先了解递归。 – 2010-01-11 16:33:01
如果你正在寻找递归,如下所述,确保你有一个方法来解决它,因为递归是一个可怕的方式来导致一个严重的崩溃。 – Paddy 2010-01-11 16:33:41