【发布时间】:2023-03-31 07:07:01
【问题描述】:
我有 java 枚举
package com.moc;
public enum MyType {
s,
q,
p,
none,
}
在 matlab(2012a) 中我加载适当的 jar,并设置
a = com.moc.MyType.q;
a = com.moc.MyType.none;
它也有效。但是当我尝试评估时
a = com.moc.MyType.s;
或
a = com.moc.MyType.p;
我遇到了异常
The class com.moc.MyType has no property or method named 's'.
和
The class com.moc.MyType has no property or method named 'p'.
为什么 matlab 不允许我获取 's' 和 'p' 枚举值?
附:
a = com.moc.MyType.q;
a.getClass.getDeclaredField('p')
返回
public static final com.moc.MyType com.moc.MyType.p
更新
com.moc.MyType.valueOf('p') 有效。但问题对我来说仍然很重要。
【问题讨论】: