IntelliJ idea evaluate expression
介绍一个idea的debug神器evaluate expression,evaluate expression是idea一个在debug模式下可以动态执行代码的工具,甚至还能动态修改该次代码运行时变量的值,利用这个工具我们在debug的时候可以执行我们代码中的方法,查看变量的值
)
我们只需要在expression写java代码即可,现在写个简单的demo演示下这个工具的强大
public class Main {
public static void main(String[] args) {
// write your code here
int a = 1;
int b = 2;
System.out.println(add(a,b));
}
public static int add(int a,int b){
return a+b;
}
}
现在有个简单的代码,计算a+b的值并且打印出来,我们在实际项目中基本上是不可能使用Println这种控制台打印方式的,都会使用log4j这类日志组件来打印运行日志,我们在debug的时候就是想知道add这个方法返回的内容是什么,因为是直接调用了方法,debug的时候又无法通过变量的方式查看结果值,使用打印日志的方式打印出来再去看日志文件又显得比较麻烦,这时候evaluate expression就可以发挥他的作用了
我们直接调用add(a,b)方法就可以得到结果,甚至我们还可以填入不同的参数,比如
而且这里填入的参数可以是当前运行方法的所有的变量,想怎么玩怎么玩,只要是在原有代码基础上能够执行的代码在这里都可以得到结果
在看看动态修改变量值的功能,这段代码运行后会在控制台打印出3,我们现在sout这行打个断点,然后把a的值改成4
然后过掉这个断点,看看最后打印的值
可以看到最后的值已经变成6了
这种修改变量的方法在这一次debug下会一直生效,我们在平时开发web项目的时候,使用debug模式启动了一次tomcat容器,那么使用evaluate expression修改的变量值在这一次tomcat运行下都是会生效的
更多的可以参考官网:Evaluating Expressions