public class ClassA {
public void count(int i)
{
count(++i); //throws StackOverFlowError
}
public static void main(String[] args) {
ClassA a = new ClassA();
a.count(3);
}
}
当我调试代码时,我可以看到它在count方法内的调用count方法,但是在pre-increment之后,为什么在不退出方法的情况下继续递增i
变量?为什么会抛出StackOverflowError?
您再次使用递增的值调用该方法。这个数字无限。 – dhke
放置一个条件来停止递归循环。 – Shriram
您正在使用递归调用您的方法而没有任何中断条件。 – Abubakkar