zoukankan      html  css  js  c++  java
  • IntelliJ idea evaluate expression

    介绍一个idea的debug神器evaluate expression,evaluate expression是idea一个在debug模式下可以动态执行代码的工具,甚至还能动态修改该次代码运行时变量的值,利用这个工具我们在debug的时候可以执行我们代码中的方法,查看变量的值

    深度截图_选择区域_20181111163648.png-15.1kB)

    我们只需要在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就可以发挥他的作用了

    深度截图_选择区域_20181111164528.png-15.9kB

    我们直接调用add(a,b)方法就可以得到结果,甚至我们还可以填入不同的参数,比如

    深度截图_选择区域_20181111164626.png-15.8kB

    深度截图_选择区域_20181111164948.png-16.8kB

    而且这里填入的参数可以是当前运行方法的所有的变量,想怎么玩怎么玩,只要是在原有代码基础上能够执行的代码在这里都可以得到结果

    在看看动态修改变量值的功能,这段代码运行后会在控制台打印出3,我们现在sout这行打个断点,然后把a的值改成4

    深度截图_选择区域_20181111165148.png-77.4kB

    然后过掉这个断点,看看最后打印的值

    深度截图_选择区域_20181111165246.png-38.8kB

    可以看到最后的值已经变成6了

    这种修改变量的方法在这一次debug下会一直生效,我们在平时开发web项目的时候,使用debug模式启动了一次tomcat容器,那么使用evaluate expression修改的变量值在这一次tomcat运行下都是会生效的

    更多的可以参考官网:Evaluating Expressions

  • 相关阅读:
    换个角度思考问题
    云南印象
    子网掩码划分实例
    子网掩码划分工具下载
    实景地图
    AutoCAD图像输出(输出图像)技巧
    两种消费观念
    子网掩码划分计算方法及实例
    C/C++从入门到高手所有必备PDF书籍收藏
    WINCE6.0添加特定的软件键盘
  • 原文地址:https://www.cnblogs.com/mrmoo/p/9942605.html
Copyright © 2011-2022 走看看