我有一個問題來計算Java中的單詞。Java字計數器
我有一個地圖
Map<String,StringBuilder> files_and_text = new TreeMap<String,StringBuilder>();
字符串是一個文件名,而StringBuilder的包含文件的文本。
例如
StringBuilder file_tex = new StringBuilder();
StringBuilder file_tex2 = new StringBuilder();
file_text.append("some contents some file one");
files_and_tex.put("file1", file_text);
file_text2.append("test words test test words");
files_and_tex.put("file2", file_text2);
現在我想打一個字典,可以告訴我:
|word 1 | word 2 | word 3 ........
file 1 | 3 | 1 | 0 .........
file 2 | 6 | 2 | 9 .........
.......
.......
的話1,2,3等等都是語料庫的話。文件1,2,3等是文件名。此矩陣中的每個值表示在當前文件中出現此類單詞的次數。我最近從C移動到Java,我知道如何編寫凌亂的代碼(結構化的) 來解決這個問題;我想知道如何在純面向對象的風格,特別是在Java中。
注意:這不是一項任務!
也許if(!wc.containsKey(word))wc.put(word,1); else wc.put(word,wc.get(word)+1);'?或'得到;檢查null,把1,否則得到+ 1'? – khachik 2010-12-16 16:49:42
我認爲目前的解決方案更清潔。如果沒有值存在,它將被視爲0,並且無論如何,當前值應該增加1. – aioobe 2010-12-16 16:55:07
感謝您的示例,但它不創建字典,因爲我在我的問題 – Tweet 2010-12-16 17:25:05