我想用遞歸函數來實現一些東西,其中包括打印輸出。我想在打印的輸出中增加標籤的級別。我能夠成功實現這一目標使用以下方法Java遞歸函數,單值初始化
int count =0;
public void m1 (Object n)
{
count++;
List nl = n.getChildren();
int nlsize = nl.size();
for (int i = 0 ; i < nlsize ; i++)
{
String objName = nl.getObjAt(i).getText();
for (int tab=0; tab<count ; tab++) {System.out.print("\t");}
System.out.println(objName);
m1(nl.getObjAt(i));
}
count--;
}
但限制而這種做法的問題,與數外的初始化的東西,是很明顯的。
有沒有辦法實現這個?我知道java不接受參數傳遞的默認值,否則這可能是一個可能的解決方案。如何才能實現這一目標?
打印輸出每次遞歸函數被調用? – ItachiUchiha
你應該將'count'作爲方法參數傳遞,最初傳遞爲0. – Manish
是的,這是可能的解決方案,但有沒有一種方法不需要每次都將它傳遞爲0? – Shisa