本文介紹了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")覆蓋。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。