2014-11-22 76 views
4

当在intellij中调试时,我可以告诉它显示给定的int变量及其十进制值或十六进制值。在intellij中可以同时将int看作十进制和十六进制吗?

调试器是否可以同时显示BOTH?

+0

你为什么要这样做? – 2014-11-22 07:43:05

+0

@ElliottFrisch我正在写(尝试)一个6502仿真器,看到十六进制和对应的十进制值,特别是寄存器十分方便。 – 2014-11-23 22:12:19

+0

或能够选择一个全局设置并让它保持放置,或者将其设置为一个字段并保持放置。 reasn是我有一个断点和一条消息进来,我需要查看一个特定的领域(或只是所有的)在十六进制每次中断点击中。它真的减慢了工作,如果我必须右键单击,选择项目,每次而不是重复击中F9真正的NASTY解决方法它将一个字符串测试= Double.toHextString(myField)在方法中,并显示。 – peterk 2017-10-18 11:56:05

回答

2

不,这是不可能的。

调试时,可以右键单击整数变量,然后选择View As >HexPrimitive,而不是两者。

此设置仅适用于单个变量,并且似乎不会通过不同的调试会话持续。

我看了一下使用数据类型渲染器(右键单击变量并进入Customize Data Views...以查看对话框)的可能性。

数据类型渲染器仅适用于复杂数据类型(不是基元)。因此,例如,如果您希望看到的int380x26始终是复杂对象的一部分(例如Person.age),那么数据类型渲染器可能会有所帮助。

或者,您可以添加一个String值表达式,为您的int的十进制和十六进制值构造一个字符串值。

对不起,有没有办法做到你想要的,但我希望这两个其他建议是有益的考虑。

+1

实际上,添加字符串监视表达式的想法会起到诀窍的作用。谢谢! – 2014-11-23 22:11:34

1

是的,至少在建立在intellij上的Android Studio 2.1中是可以的。 打开设置 - >内置... - >调试器 - >数据视图 - > Java并启用显示基元的十六进制值。然后它在调试器中显示大括号中的整数和十六进制。