2012-05-23 93 views
0

我有一個2列的csv文件。我試圖爲每個維度創建一個哈希表 - 如果我以前沒有看過它,只需添加一個值。我想爲每列創建2個獨立的哈希表。列包含字符串和數字值。從類定義我發現containsKey(Object key)methoid測試指定的對象是否在此哈希表中的鍵。我能解釋像我的csv文件詳細一點可能像下面如何在java中創建哈希表

New York, 50 
Sydney, jessi 
california, 10 
New York, 10 

所以對於第1列紐約哈希表來2我想要一份把鑰匙紐約和值2

可以任何人都可以幫助我如何創建一個像這樣使用Java哈希表類的哈希表,或者維護一個單獨的數組

+1

爲什麼「紐約」變成了「2」? –

+7

我建議你實際閱讀'HashTable'(以及它下降的類)的文檔。你知道,這不是一個代碼生成站點。 –

+0

你實際擁有多少數據?你真的需要一個Hashtable嗎?你看過使用簡單的地圖嗎? –

回答

1

嘗試this SourceForge上的一個名爲OpenCSV的開源項目。

然後你可以編寫這樣的代碼來將CSV讀入你的地圖。

try { 
    CSVReader reader = new CSVReader(new InputStreamReader(new FileInputStream(new File("/path/to/your/file.csv")))); 
    Map<String, String> result = new HashMap<String, String>(); 
    for(String[] row : reader.readAll()) { 
     result.put(row[0], row[1]); 
    } 
} catch (FileNotFoundException e1) { 
    e1.printStackTrace(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

您可以在OpenCSV文檔here上閱讀更多信息。

+0

非常感謝您的迴應,我正在閱讀哈希映射,我是使用散列表和散列表的新... –