假设我有这样的Java代码(仅作为示例):

public void someMethod(){
    int a = 3;
    int b = 2; // <-- stay debug here
    a = b + 2;
    System.out.prinln(a);
}

可以跳过“int a = b + 2;”行的执行并立即转到“System.out.prinln(a);”?

附言我使用Intellij Idea 12。

最佳答案

调试器不可能不执行部分代码。

但是,可以执行额外的代码并更改变量的值,因此,如果需要在调试期间从执行中排除一行,则必须更改代码以准备进行此类调试。

public void someMethod() {
    int a = 3;
    int b = 2;
    boolean shouldRun = true;
    if (shouldRun) {
        a = b + 2;
    }
    System.out.prinln(a);
}

然后,您将设置一个断点,该断点在不停止执行的情况下更改shouldRun的值。可以这样做。

注意
  • 未选中挂起
  • 记录评估表达式用于在击中断点时更改变量
  • 07-24 09:48
    查看更多