001、条件断点 给断点增加一个Java条件表达式,当表达式的值是true时断点才生效,例如设置for循环中i为偶数时断点才生效: 002、计算表达式 调用自定义的Java表达式,输出计算值,在调试的时候通过该功能可快速计算一个表达式的执行效果,提高Debug效率: 003、修改变量值 有些时候程序运行结果不符合预期,但是我们不想修改代码重头再来,这时可以动态地修改变量的值:004、打印堆栈信息 用于查看方法调用的堆栈,勾选打印堆栈选项即可: 005、监听变量 用于监听变量,当变量被修改和读取时程序会暂停运行,例如监听count变量: 006、自定义多线程执行顺序 将断点设置为线程级别,这样就可以人为地操控线程的执行顺序,对于调试高并发下的特殊情况非常有帮助: 007、回退父级函数 有些时候不小心点了单步进入到方法内部,可以通过丢弃当前帧退回来,它的厉害之处在于退出来之后带能再进入: 008、Stream流追踪 用于展示stream流每一步的执行结果,方便观察步骤比较多的stream流逻辑: 009、forcereturn强制返回 有时在调试的时候发现了一些错误,这时想停止运行,因为继续往下执行会插入一些数据,清理数据又是一番功夫,如果点击停止运行是不行的,IDEA会把当前方法后面的代码都执行了,解决这个问题可以用forcereturn选项强制返回: 010、方法断点 将断点打在类或接口的方法,当方法被调用时程序会暂停运行: 011、跳转到光标 有时代码行数比较多,不想一行一行地点击执行,可以将光标定位到目标行,再点击按钮直接执行到光标处: