首先是第一次接触博客园,感觉这是一个非常棒的交流平台,不管是菜鸟还是老手都可以在这学习到很多。
首先看到这个题目。首先我对这个题目进行了分析,此过程大概持续了1天时间,最后我确定用Java来完成。
然后就是设计阶段:本程序利用HashMap先存储读取的单词,并且记录出现频率。然后倒入到List中,通过自定义的Comparator来通过频率高低排序,显示前十个。
然后进入编码阶段:此过程持续1天。
最后需要对自己编写的程序进行测试以及修改,发现不好的地方改进。
下面是对此程序每个阶段的具体分析:
一:此段程序是文件读取
File file = newFile(path);
FileInputStream fis= newFileInputStream(file);
InputStreamReader isr= new InputStreamReader(fis);
二:此段程序是先声明一个StringBuffer对象,通过读取的字符来组成单词,当遇到
不是字母的时候得判断单词放入到一个HashMap中
intthechar;
StringBuffer word= newStringBuffer();
HashMap wordList = new HashMap();while ((thechar = isr.read()) != -1) {char letter = (char) thechar;if ((letter >= 'a' && letter <= 'z')|| (letter >=