2013-04-04 30 views
0

我正在嘗試編寫一個將使用霍夫曼代碼的程序。但是,當我使用樹集時,它需要「Char,Integer」的參數。我希望它採用「String,Integer」參數。我能做些什麼來解決這個問題?我在做什麼錯了TreeMap <node>?

private static void processFile(HashMap<String,Integer> freq) 
    { 
    TreeSet<Node> trees = new TreeSet<Node>(); 

    for (Map.Entry<String, Integer> entry : freq.entrySet()) { 
     String key = entry.getKey(); 
     Integer value = entry.getValue(); 

     if (value > 0) 
     { 
     Node n = new Node(key, value); 
     trees.add(n); 
     } 
    } 
+0

它在哪裏需要一個字符? – Mordechai 2013-04-04 19:02:44

+0

檢查Node的構造函數。確保它需要一個匹配的類型。 – Reimeus 2013-04-04 19:04:30

+0

哦,我有「鑰匙」,它說參數是「char,Integer」 – Bill 2013-04-04 19:04:57

回答

1

變化:

Node n = new Node(key, value); 

到:

Node n = new Node(key.charAt(0), value); 

我認爲,出現這種情況是因爲Node構造函數需要一個char不串。