如何通过将鼠标悬停在变量

时间:2018-04-24 10:02:22

标签: java eclipse debugging hover

我习惯通过悬停来直接获取元素的当前值。但是,它在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);
}

}

1 个答案:

答案 0 :(得分:0)

对于不经常检查

您要找的是inspect选项 在调试期间,当调试器暂停在语句上时,请按照下列步骤操作:

  • 选择要评估的表达式
  • 然后右键单击并选择“检查”或 Ctrl + I

它将执行选定的表达式。

这是预览:

enter image description here

请注意,如果表达式对对象本身或其他对象产生副作用,则可能会对应用程序行为产生副作用。
例如,如果您检查表达式,例如:

list.add("a string");

这将执行两次:第一次进行检查,然后第二次进行正常执行。

对于经常性检查

如果您需要多次观看表情,使用“观看”功能更合适 您可以在调试期间以与检查它们相同的方式制作要监视的表达式,但这次通过选择“监视”选项。

以下是这样的预览:

enter image description here