Java 在btrace中,如何比较和检查枚举对象的值?

Java 在btrace中,如何比较和检查枚举对象的值?,java,jvm,trace,btrace,Java,Jvm,Trace,Btrace,我在btrace中正确设置了回调。我的参数列表包含自定义枚举对象。如果枚举对象等于特定值,我想打印一些内容。我可以直接比较Enum对象,也可以将该Enum对象的字符串表示形式与常量字符串进行比较 但是,str()函数不会返回此枚举对象的字符串表示形式。它沿着这条路走$class@hash. 如何比较btrace中的枚举对象 谢谢! 埃尔本找到了答案。枚举的字符串表示形式存储在此枚举对象的“名称”字段中。因此,使用反射从对象获取“name”字段的值,如下所示: private static Fi

我在btrace中正确设置了回调。我的参数列表包含自定义枚举对象。如果枚举对象等于特定值,我想打印一些内容。我可以直接比较Enum对象,也可以将该Enum对象的字符串表示形式与常量字符串进行比较

但是,str()函数不会返回此枚举对象的字符串表示形式。它沿着这条路走$class@hash.

如何比较btrace中的枚举对象

谢谢!
埃尔本找到了答案。枚举的字符串表示形式存储在此枚举对象的“名称”字段中。因此,使用反射从对象获取“name”字段的值,如下所示:

private static Field enumNameField = field("java.lang.Enum", "name");
String stringRepresentation = (String) get(enumNameField, enumObject);