Java Eclipse调试器获取方法调用的结果

时间:2010-02-11 14:06:01

标签: java eclipse debugging

我有一个相对复杂的对象,其中包含一个ConcurrentHashMap。在调试器中,我想看到调用.size()方法的结果,但我实际上并不想在我的代码中使用它,也不想将它放入。

Debugger image http://img153.imageshack.us/img153/1695/will.png

上面你可以看到我有什么用,但id喜欢以某种方式调用/看到.size()方法的结果

然而,我可以看到许多对地图和细分等的引用,但它们只是值。

只是想知道它是否可能?

3 个答案:

答案 0 :(得分:10)

在调试器中,打开“显示”视图。这将允许您评估您输入的表达式。

请参阅“Scrapbooking您的实时代码”下的http://www.ibm.com/developerworks/library/os-ecbug/

以下是更详细的文章:http://larsho.blogspot.com/2008/07/my-favorite-eclipse-view.html

答案 1 :(得分:4)

作为在“显示”视图中运行size()方法的替代方法,您只需按“变量”窗口上的“显示逻辑结构”按钮,地图的显示就会变为视图数组。数组的大小是Map的大小。

答案 2 :(得分:0)

我会使用log4j并做一些调试输出:

if (log.isDebugEnabled()) {
  log.debug("size: " + myConcurrentHashMap.size());
}

这样。只有在调试日志级别...

时才会调用.size()