繁体   English   中英

从另一个类访问HashMap数据时出现问题

[英]Problem accessing HashMap data from another class

在访问HashMap中的数据时遇到问题。 它是在一个类中创建的,并且是从另一个类中调用的。 见下文;

创建

public class LoadDatabase {
    public Map virusDatabase = new HashMap();
    ...
    public void toHash(String v_Name, String signature) {
        virusDatabase.put(v_Name, signature);
    }
    ...
    public void printDatabase() {   // This method is displaying correct data, so is being stored.
        Iterator iterator = virusDatabase.keySet().iterator();
        while (iterator.hasNext()) {
            String key = (String) iterator.next();
            System.out.println(key + " = " + virusDatabase.get(key));
        }
    }
    ...
}

需要访问

public class LCS {
    LoadDatabase lb = new LoadDatabase();
    Tokenizer T = new Tokenizer();
    ...
    public void buildDataLCS(String[] inTokens) {
        Iterator iterator = lb.virusDatabase.keySet().iterator();
        ...                
        while (iterator.hasNext()){
            String key = (String) iterator.next();
            String v_sig = (String) lb.virusDatabase.get(key);
            System.out.println(v_sig);  //Example of problem, nothing printed
        ...
    }
    ...
}

为什么会出现问题? 你能指出我正确的方向吗?

两个问题中的任何一个,

  1. 你没有放任何东西。 因为我看不到你调用toHash(String v_Name, String signature)方法。

  2. 您正在以某种方式使用2个不同的LoadDatabase类实例。 尝试制作LoadDatabase单例。

卡洛斯

我怀疑你没有把你认为放在地图中的东西放在地图上,或者你输入数据时的键与你取出值时的键不一样。 我会记录/打印你输入的键/值,然后记录/打印你试图离开的键/值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM