IDEA调试技巧

IDEA调试,除了常用的F8,F7之外,还有这些调试技巧

1.条件断点

1.1使用场景

调试进入循环时,希望达到某个条件的时候停下来

1.2使用方法

右键单击红色断点,在条件输入框里填上 i=100
那么,当程序运行到断点处时,就会自动显示 i=100时的运行结果


image.png

2.回到上一步

2.1使用场景

调试时,返回上一步的结果

2.2使用方法

public class DebugTest {
    public static void main(String[] args) {
//        test1();
        test2();
    }

    /**
     * 方法A调方法B,B再调C
     */
    private static void test2() {
        System.out.println("进入test2");
        method1("test2方法调method1");
    }

    private static void method1(String str1) {
        System.out.println("进入method1");
        method2(str1,"method1调方法method2");
    }

    private static void method2(String str1, String str2) {
        System.out.println("进入method2");
        System.out.println(str1 + str2);
    }
}

本来,断点运行到method2()方法中

image.png

点击Drop Frame图标后,回退到上一个方法method1()中
image.png

注:JVM内部以栈帧为单位保存线程的运行状态,drop frame即扔掉当前运行的栈帧,这样当前“指针”的位置,就会回到上一帧的位置。

3.修改变量的值

3.1使用场景

在循环中,把索引变量赋值为想要的值,查看对应的运行结果

3.2使用方法

debug的时候,选中变量,右键点击“set value”,给变量赋值


image.png

4.临时执行表达式

4.1使用场景

通过执行某个表达式,可以查看链式函数的中间执行结果

4.2使用方法

如图,点击调试窗口中的Evaluate Expression 按钮(或者:Alt+F8)


image.png

你可能感兴趣的:(IDEA调试技巧)