在Eclipse中进行大量迭代后的循环中的断点

假设我有以下代码。 在调试时,我希望Eclipse在完成100万次迭代后停止。 这个怎么做? 我不能手动做100万次。

for(int i = 0; i < 10000000; i++) { //some code } 

您可以在eclipse中放置条件断点:

  1. 放一个断点
  2. 右键单击 – >属性
  3. 打开“条件”复选框
  4. 放条件代码

    我== 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和j 3:

 for (int i = 0; i < 100; i++) { System.out.println(i); for (int j = 2; j < 5; j++) { System.out.println(j); } } 

一旦断点被​​击中,它将被禁用,直到用户重新启用。 换句话说,如果每次重新启用,此function也可用于每20次检查特定断点。