Flutter调试本地变量:如何显示对象标识符?
Flutter调试器显示对象标识符的设置方法
方法一:重写toString()方法自定义显示格式
通过重写对象的toString(),结合identityHashCode获取对象的唯一哈希值,就能实现类似Java调试器的MyObject@12345显示效果。示例代码如下:
class MyObject { MyObject? wrapped; @override String toString() { final id = identityHashCode(this); final wrappedStr = wrapped != null ? ' (wrapped: ${wrapped.toString()})' : ''; return 'MyObject@$id$wrappedStr'; } }
调试时列表中的对象就会显示为MyObject@12345格式,嵌套的wrapped对象也会同步显示标识符。
方法二:开启IDE调试器的对象标识显示选项(IntelliJ/Android Studio)
如果不想修改代码,可以直接在IDE中开启内置选项:
- 打开IDE设置(快捷键:Ctrl+Alt+S / Cmd+,)
- 进入 Languages & Frameworks > Flutter > Debugger 页面
- 在 Display options 区域,勾选 Show object identities
- 重启当前调试会话,调试面板里的对象就会自动显示类似
MyObject@12345的标识符
内容的提问来源于stack exchange,提问作者eastwater
相关产品推荐
相关产品推荐

