假设我有以下代码。在调试时,我希望 Eclipse 在完成 100 万次迭代后停止。这个怎么做?我不能手动做 100 万次。
for(int i = 0; i < 10000000; i++) {
//some code
}
您可以在eclipse中放置条件断点:
放置条件代码
我 == 1000000
在这种情况下,请执行以下操作:
for(int i = 0; i < 10000000; i++)
{
if(i==1000000){
// do nothing ....
// this is just a dummy place to make eclipse stop after million iterations
// just put a break point here and run the code until it reaches this breakpoint
// remove this if condition from your code after you have debugged your problem
}
//your code
}
我知道我正在坏死,但我正在回答@Anarelle 关于当前接受的关于在没有可用变量时停止的答案的问题。这也回答了最初的问题。在 Eclipse 的条件断点窗口中(在 Debug Perspective 中),您可以单击Hit count:旁边的复选框,然后简单地给出断点在暂停执行之前应该“触摸”的次数。请注意,这不仅在循环之外起作用(例如,仅在我尝试此操作 3 次后才暂停调试),而且还考虑了外部循环。例如,在下面的代码中,如果我的命中计数是 20,则断点命中时i
将是 6 和3:j
for (int i = 0; i < 100; i++) {
System.out.println(i);
for (int j = 2; j < 5; j++) {
System.out.println(j);
}
}
一旦断点被命中,它将被禁用,直到用户重新启用。换句话说,如果每次都重新启用,此功能还可用于每 20 次检查特定断点是否被命中。