项目 | 内容 |
---|---|
次做业所属课程 | 软件工程 |
做业要求 | 做业要求内容 |
课程学习目标 | 熟悉软件开发总体流程,提高自身能力 |
本次做业在哪一个具体方面帮助咱们实现目标 | 第一次体验一个完整的工程 |
点评心得:阅读完这位同窗的博文以后,让我意识到个人博文总体还不是很美观,应该更少地使用截图的形式。html
String path = firstPanel.textField.getText(); try { FileInputStream fis = new FileInputStream(path); BufferedReader br = new BufferedReader(new InputStreamReader(fis)); String temp=""; long startTime=System.currentTimeMillis(); startTime1=System.currentTimeMillis(); while((temp = br.readLine())!=null) { stmplength1+=temp.length(); String[] str = temp.split("([^a-zA-Z])"); //过滤出只含有字母的 stmplength++; for(int i=0;i<str.length;i++) { String word = str[i].trim(); if(word.length()!=0) //去除长度为0的行 staff.put(word, staff.getOrDefault(word, 0)+1); } } br.close(); endTime1=System.currentTimeMillis(); //System.out.println("Total time is:"+ (endTime-startTime) ); rank();//按值排序 long endTime=System.currentTimeMillis(); //System.out.println("文件读入成功!请继续..."); JOptionPane.showMessageDialog(null, "文件读入成功! \n 耗时:"+(endTime-startTime)+"ms");//提示登陆成功 }catch(Exception e) { //System.out.println("文件不存在!!!请从新确认!"); JOptionPane.showMessageDialog(null, "文件读入出错!"); }
按值排序java
public static void rank()//按值排序 { Set<Entry<String,Integer>> mapEntries = staff.entrySet(); aList = new ArrayList<Entry<String,Integer>>(mapEntries); Collections.sort(aList, new Comparator<Entry<String,Integer>>() { @Override public int compare(Entry<String, Integer> ele1, Entry<String, Integer> ele2) { return ele2.getValue().compareTo(ele1.getValue()); } }); /* for(Entry<String,Integer> entry: aList) { System.out.println(entry.getKey() + " : " + entry.getValue()); } */ }
统计文本中除冠词、代词、介词以外的高频词git
for(int i=0;i<k;i++)//10 { boolean ok=false; if(flag) textArea.append(function.aList.get(i).getKey()+"\t"+function.aList.get(i).getValue()+"\n"); else { for(int j=0;j<function.stop.size();j++) { if(function.aList.get(i).getKey().toLowerCase().equals(function.stop.get(j))) { k++; ok=true; break; } } if(!ok) textArea.append(function.aList.get(i).getKey()+"\t"+function.aList.get(i).getValue()+"\n"); } }
4.运行程序
登录(nwnu,2019)
读入文件
主运行界面
指定单词词频统计及柱状图
前k个高频词汇统计
统计文本中除冠词、代词、介词以外的高频词
输出到文件
统计行数及字符数
github
5.结对编程
编程
6.PSPapp
任务内容 | 计划完成时间(min) | 实际完成时间(min) |
---|---|---|
计划 | 10 | 8 |
估计这个任务须要多长时间,并规划大体工做步骤 | 5 | 6 |
开发 | 110 | 130 |
需求分析(包括学习新技术) | 8 | 6 |
生成设计文档 | 5 | 8 |
设计复审(和同事审核设计文档) | 5 | 4 |
代码规范(为当前的开发制定合适的规范) | 4 | 3 |
具体设计 | 15 | 10 |
具体编码 | 150 | 200 |
代码复审 | 5 | 6 |
测试(自我测试、修改代码、提交修改) | 15 | 12 |
报告 | 9 | 5 |
测试报告 | 5 | 3 |
计算工做量 | 3 | 2 |
过后总结,并提出工程改进计划 | 5 | 3 |
7.小结感觉
经过这次的结对项目编程,让我感觉到了合做的利与弊,诚然,合做编程能提高整个过程的效率,但若是没有好的交流共通,加上对彼此代码风格的不适应,反而会下降团队的效率。ide