本文介紹了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模式下,設(shè)置斷點后,上圖的變量a原始值為11,在Watchs中點擊綠色的加“+”號,輸入表達(dá)式a=22,向下執(zhí)行,可以發(fā)現(xiàn)a的值變?yōu)榱?code>22。

對于特殊的類型例如,
Map、List等,同樣可以通過map.put("name","Hali")類似的方式賦值。

com.ycjf.ycs.service.khgl.wxzlgl.testClass - a=22,map={name=Hali, age=20} 注意:Watchs中的表達(dá)式作用的優(yōu)先級高于代碼中的優(yōu)先級
例子中 Watchs中map.put("name","Hali")在代碼map.put("name","Pi")執(zhí)行之前定義,map中的name值在整個debug期間一直為Hali,不會被代碼map.put("name","Pi")覆蓋。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。
新聞熱點
疑難解答
圖片精選