我习惯通过悬停来直接获取元素的当前值。但是,它在Eclipse中似乎有所不同。有没有办法改变悬停输出?
实施例: 假设我有一个对象“myObject”的ArrayList“列表”,其属性为“name”和“value”。 我想在下面的代码行中调试“list”的元素“i”:
list.get(i).name;
元素i包含值name = Test和value = 1。我想看到的是“测试”或“名称=测试”悬停在“名称”上。但是,我得到“String packagePath.myObject”。
对于这个简短的元素调用列表,我可以在“myObject”中编写一个“toString”函数来查看正确的输出。但是,如果我连续有更多的呼叫,这并没有真正起作用。因此,有一个简单的选项可以直接显示我的变量值吗?
编辑:最小例子
package testHovering;
import java.util.ArrayList;
public class mainHover {
public static void main(String[] args) {
class myObject{
public String name;
public int value;
public myObject(String name, int value) {
this.name=name;
this.value=value;
}
}
ArrayList<myObject> list = new ArrayList<>();
list.add(new myObject("Test", 1));
String temp = list.get(0).name;
System.out.println(temp);
System.out.println(list.get(0).name);
}
}
答案 0 :(得分:0)
对于不经常检查
您要找的是inspect
选项
在调试期间,当调试器暂停在语句上时,请按照下列步骤操作:
它将执行选定的表达式。
这是预览:
请注意,如果表达式对对象本身或其他对象产生副作用,则可能会对应用程序行为产生副作用。
例如,如果您检查表达式,例如:
list.add("a string");
这将执行两次:第一次进行检查,然后第二次进行正常执行。
对于经常性检查
如果您需要多次观看表情,使用“观看”功能更合适 您可以在调试期间以与检查它们相同的方式制作要监视的表达式,但这次通过选择“监视”选项。
以下是这样的预览: