我在一个存储String键和boolean值的类中有一个 Map。然后,我从函数返回地图getMap()。
public class FacilityMachines {
private static Map<String, Boolean> map = new HashMap<String, Boolean>();
public Map getMap(){
return map;
}
在下面的课程中,我试图获取该地图,然后将其保存到外部文件中,我还在FacilityMachines那里实例化:
public class WriteFile {
FacilityMachines fm = new FacilityMachines();
private Map<String, Boolean> m = new HashMap<String, Boolean>();
}
在WriteFile中,我试图将地图解析成一个新的 HashMap:
public void saveFacilityInfo() {
for (Map.Entry<String, Boolean> j: fm.getMap().entrySet()){
String s = j.getKey();
boolean b = j.getValue();
oStream.println(i + ": " + s + " = " + b + ". ");
}
}
oStream只是我的变量PrintWriter。
以上产生Object cannot be converted to Entry<String, Boolean>错误。
如果我将方法签名更改saveFacilityInfo为saveFacilityInfo(FacilityMachines fm),然后使用该fm变量尝试在该行获取地图,for (Map.Entry<String, Boolean> j: fm.getMap().entrySet())那么我会从接口中获得cannot find symbol所有函数的a : 、和。EntryentrySet()getKey()getValue()
在有人问之前,我已经导入了HashMapand Map,并且还尝试使用 onlyimport java.util.*;来导入所有内容以防万一。
我也尝试过扩展并FacilityMachines得到WriteFile了相同的结果。
茅侃侃
相关分类