在调试递归方法时,我想知道它的级别。给我一些建议,无论是代码还是IDE工具(最好是Eclipse)。
答案 0 :(得分:3)
Eclipse的调试视图已经显示了线程的堆栈。看看那个。
答案 1 :(得分:0)
使方法采用一个额外的整数参数,从1开始,每当你更深一层时递增它。
答案 2 :(得分:0)
保持计数器,它的值将显示深度级别。像这样:
int counter = 0;
void call() {
counter++;
// recursive call
call()
counter--;
}
答案 3 :(得分:0)
@Kayaman是对的(+1)
但是,如果递归非常深,手动计算深度可能不方便。您可以改用Expressions
视图。写那里的表达式new Throwable().getStackTrace().length
。这将为您提供递归深度+ n
,其中n
是从main
到递归开始的方法调用次数。