public class TestList {
public static String read(String fileName) {
StringBuilder sb = new StringBuilder();
try {
BufferedReader in = new BufferedReader(new FileReader(new File(
fileName).getAbsoluteFile()));
try {
String s;
while ((s = in.readLine()) != null) {
sb.append(s);
sb.append("\n");
}
} finally {
in.close();
}
} catch (IOException e) {
throw new RuntimeException(e);
}
return sb.toString();
}
Map<String, Integer> map = new HashMap<String, Integer>();
//函数read从文件中读取单词。并分割为一个个字符串对象。
String[] s = read("words.txt").split("\n");
for (int i = 0; i < s.length; i++) {
System.out.println(s[i]);
//如果根据键值返回的是null说明map中还没有这个单词存在.
//如果不是null,返回它的值即单词的计数
int j = (map.get(s[i]) == null ? 0 : map.get(s[i]));
//然后在put到map中,在原先单词个数上加一.最终得到单词总数.
map.put(s[i], j + 1);
}