如何将哈希表作为值添加到其他Hashtable

时间:2017-10-01 08:52:29

标签: java hashtable

我有以下方法返回哈希表:

public static Hashtable<Integer, Hashtable<Integer, List<String>>> BuildIndex(List<Integer> configuration, String filename) throws FileNotFoundException {

    Hashtable<Integer, Hashtable<Integer, List<String>>> final_nGram = new Hashtable<Integer, Hashtable<Integer, List<String>>>();

    Hashtable<Integer, List<String>> tmp_nGram = new Hashtable<Integer, List<String>>();

    Scanner inFile = new Scanner(new File(filename));

    while (inFile.hasNext()) {
        String unparsed = inFile.nextLine().intern();
        String[] parsed = unparsed.split("\n");//change line
        sentences.add(parsed[0]);
    }
    inFile.close();
    int line = 0;        
    for (String s : sentences) {
        //for test
        //System.out.println(s);
        for (int x = configuration.get(0); x <= configuration.get(1); x++) {
            tmp_nGram.put(x, ngrams(x, s));
        }

        final_nGram.put(line, tmp_nGram);   

        line++;
    }

    return final_nGram;
}

ngrams(x,s)返回List String&gt;。

当我运行它时,我只得到循环的第一句作为final_nGram Hashtable中的键。但我应该得到所有句子。

实际上我要做的是将散列表tmp_nGram保存为另一个散列表final_nGram的值。

有人可以解释我出了什么问题吗?

0 个答案:

没有答案