IDEA Debug模式下改变各类型变量值的方法
时间:2021-01-07 11:29:07|栏目:JAVA代码|点击: 次
本文介绍了IDEA Debug模式下改变各类型变量值的方法,分享给大家,具体如下:

测试类
import org.slf4j.LoggerFactory;
import java.util.HashMap;
import java.util.Map;
/**
* Created by PengHongfu 2018-04-18 18:21
*/
public class testClass {
private static final org.slf4j.Logger logger = LoggerFactory
.getLogger(testClass.class);
public static void main(String args[]){
int a = 11;
Map<String,Object> map = new HashMap<>();
map.put("name","Pi");
map.put("age",20);
logger.info("a={},map={}",a,map);
}
}

debug模式下,设置断点后,上图的变量a原始值为11,在Watchs中点击绿色的加“+”号,输入表达式a=22,向下执行,可以发现a的值变为了22。

对于特殊的类型例如,
Map、List等,同样可以通过map.put("name","Hali")类似的方式赋值。

com.ycjf.ycs.service.khgl.wxzlgl.testClass - a=22,map={name=Hali, age=20}
注意:Watchs中的表达式作用的优先级高于代码中的优先级
例子中 Watchs中map.put("name","Hali")在代码map.put("name","Pi")执行之前定义,map中的name值在整个debug期间一直为Hali,不会被代码map.put("name","Pi")覆盖。


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




