我需要再次運行我的/對象方法。這是否允許?我怎樣才能做到這一點?如何多次執行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