当我在 Eclipse Memory Analyzer 中执行以下 OQL 时
SELECT key FROM com.google.common.cache.LocalCache$StrongAccessWriteEntry
我得到了以下结果
key
---------------------------------
java.lang.String [id=0x7bfa42f80]
java.lang.String [id=0x7bdf3a5b0]
java.lang.String [id=0x7bdf380c0]
java.lang.String [id=0x7bdf175e0]
......
---------------------------------
我可以通过右键单击每个结果行并选择List Objects -> with outgoing references
来检查每个结果行的值,这不方便。我希望结果是这样的:
key
---------------------------------
java.lang.String [id=0x7bfa42f80] apple
java.lang.String [id=0x7bdf3a5b0] peach
java.lang.String [id=0x7bdf380c0] pineapple
java.lang.String [id=0x7bdf175e0] cherry
......
---------------------------------
假设apple
、peach
、pineapple
、cherry
是每一行的内容。
这样,我只需查看它就可以知道每一行的值。有什么办法吗?
我想通了,只需使用以下命令
SELECT key.toString() FROM com.google.common.cache.LocalCache$StrongAccessWriteEntry