本文介绍了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")覆盖。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VeVb武林网。
新闻热点
疑难解答
图片精选