for (String str : m.keySet()) {//this works fine
}
Run Code Online (Sandbox Code Playgroud)
Set set = m.keySet();
for (String str : set) {//Type mismatch: cannot convert from element type Object to String
}
Run Code Online (Sandbox Code Playgroud)
两者都做同样的事情,即迭代Set对象的Keys(String),而不是我在第二个代码中得到错误的原因.
我生成了一个存根,它在其中尝试访问Jar文件中定义的Static全局变量,如下所示。
generatedSetterHelperImpl(cancelWaybill, CANCELWAYBILL$0, 0, org.apache.xmlbeans.impl.values.XmlObjectBase.KIND_SETTERHELPER_SINGLETON);
Run Code Online (Sandbox Code Playgroud)
在这里,它给出了KIND_SETTERHELPER_SINGLETON变量“无法解决”的错误。当我反编译XmlObjectBase.class文件时,我发现它KIND_SETTERHELPER_SINGLETON已定义。但是在Eclipse F3中,XmlObjectBase没有显示KIND_SETTERHELPER_SINGLETON。
反编译文件(XmlObjectBase.class)的片段如下所示。
public abstract class XmlObjectBase
implements TypeStoreUser,
Serializable,
XmlObject,
SimpleValue {
public static final short MAJOR_VERSION_NUMBER = 1;
public static final short MINOR_VERSION_NUMBER = 1;
public static final short KIND_SETTERHELPER_SINGLETON = 1;
public static final short KIND_SETTERHELPER_ARRAYITEM = 2;
public static final ValidationContext _voorVc;
Run Code Online (Sandbox Code Playgroud)
好吧,我能够访问MINOR_VERSION_NUMBER变量。
Any Idea on this.
Run Code Online (Sandbox Code Playgroud) java ×2
collections ×1
core ×1
dictionary ×1
eclipse ×1
iterator ×1
jar ×1
soap ×1
web-services ×1