2012-03-16 56 views
1

僅供參考,我在學校爲作業創建了霍夫曼樹。我已經創建了樹,並存儲使用該格式在圖值:如果我有鑰匙,我如何從地圖中獲得價值?

map.put((char,string)); 

炭:通過在從一個緩衝讀取器 串一次讀取一個字符導出:是分配給該「二進制」代碼字符基於它的樹的位置

現在我想產生一個「二進制」的字符串,表示我的緩衝讀取器的初始輸入。我該怎麼做呢?這是我試過的:

String binary = ""; 
int q;  
while ((q = buffer.read()) != -1) { 
    char key = (char)q; 
    char value = (char)key.get(); 
    binary += value; 
} 
System.out.println(binary); 
+0

什麼是地圖的聲明? – 2012-03-16 03:56:04

回答

3

不應該只是value = map.get(key)?

+0

謝謝。我知道我錯過了一些簡單的事情。我應該睡一會兒。 – Justin 2012-03-16 03:55:59

+0

:) ............. – dbrin 2012-03-16 03:58:49

1

這是我做,如果我想獲得的所有鍵和值從地圖:

Set <generics> mySet = myMap.keySet(); // takes all the keys to a set 
Iterator itr = mySet.iterator(); // setting iterator to the set containing the keys 

//iterate through the set of keys 

while (itr.hasNext()){ 

       keys = itr.next(); //get the keys from the set 
       values = myMap.get (keys); //get the values from the map 

}//while (itr.hasNext())