实现方式
在用idea 进行 debug时,我们经常喜欢对某行代码打断点,然后对某个对象重新设置值,以快速地实现我们预期想覆盖的场景。通常的方式是用鼠标右键点击某个对象,然后选择Set value进行设置值,但是如果想在map中添加新的key value,这种方式就爱莫能助了,针对这个场景,我们可以采用Evaluate Expression实现。具体步骤如下:
- 设置断点:首先,在你想要调试的代码行左侧点击,设置一个断点。这样程序运行到这一行时会暂停,允许你查看和修改变量的值。
- 运行调试:点击 IDEA 工具栏上的调试按钮,选择你的运行配置,开始调试。
- 进入断点:当程序运行到设置的断点时,它会暂停。此时,你可以在 Variables 视图中看到当前作用域内的所有变量。
- 找到 Map 对象:在 Variables 视图中,找到你想要修改的 Map 对象。
- 使用 Evaluate Expression:右键点击 Variables 视图中的 Map 对象,选择 Evaluate Expression(或者直接在调试窗口下方的 Evaluate Expression 文本框中输入表达式)。
- 添加键值对:在 Evaluate Expression 对话框中,输入你想要添加的键值对的代码。例如,如果你的 Map 变量名为 myMap,你可以输入 myMap.put(“newKey”, “newValue”)。
- 执行表达式:点击 Evaluate 按钮执行这个表达式。这将在当前的 Map 对象中添加一个新的键值对。
- 继续调试:添加完键值对后,你可以继续调试程序,看看这个新添加的键值对是否按预期工作。
案例
Map<String, Integer> map = new HashMap<>();map.put("张三", 21);int size = map.size();
点击Evaluate,得到的结果如下
可以看到,通过Evaluate Expression已经把“李四”添加进map中了。
当然了,直接通过Evaluate Expression的图标直接进入Evaluate Expression窗口,再对需要修改的对象进行修改也是可以的。