基本的に、文字列をキー (単一文字) と整数変数 (文字頻度) として使用してマップを実装しようとしています。
プログラムを実行すると、不正確な周波数が得られます。誰かが私が間違っているところを見ていますか?
import java.io.File;
import java.io.FileNotFoundException;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class WordCount {
public static void main(String[] args) throws FileNotFoundException{
File f1 = new File("article.txt");
Scanner scan = new Scanner(f1).useDelimiter("|");
Map<String, Integer> wordMap = new HashMap<String, Integer>();
String letter;
Integer value = 0;
while(scan.hasNext()){
letter = scan.next();
if(wordMap.containsKey(letter)) wordMap.put(letter, value++);
else wordMap.put(letter, new Integer(value++));
}
System.out.println(wordMap);
}
}