标签:数字 length str rds ade 统计 standard blog eve
https://gitee.com/wangqiwen/SoftwareEngineering.git
结对小伙伴的学号:201621123043
博客地址:https://www.cnblogs.com/wengmq/p/9751142.html
码云地址:https://gitee.com/wengmingqiang/PersonalProject-C
PSP2.1 | 个人开发流程 | 预估耗费时间(分钟) | 实际耗费时间(分钟) |
---|---|---|---|
Planning | 计划 | 30 | 35 |
· Estimate | 明确需求和其他相关因素,估计每个阶段的时间成本 | 20 | 15 |
· Development | 开发 | 240 | 250 |
· Analysis | 需求分析 (包括学习新技术) | 30 | 25 |
· Design Spec | 生成设计文档 | 15 | 20 |
· Design Review | 设计复审 | 10 | 15 |
· Coding | Standard | 代码规范 | 10 |
· Design | 具体设计 | 50 | 80 |
· Coding | 具体编码 | 100 | 120 |
· Code Review | 代码复审 | 40 | 20 |
· Test | 测试 | (自我测试,修改代码,提交修改) | 150 |
Reporting | 报告 | 80 | 90 |
· | 测试报告 | 30 | 30 |
· | 计算工作量 | 20 | 20 |
· | 并提出过程改进计划 | 30 | 40 |
我主要的任务是将代码中的各个功能增加。
词组统计:能统计文件夹中指定长度的词组的词频
输入查找词频,就是只有词频为n的单词(不确定自己是不是审题错误,不过错误的话修改起来也很容易)
自定义输出:能输出用户指定的前n多的单词与其数量(前n种单词)
结果:
则将输出信息输出到文件 output.txt中。
输入不同数值:
词频为4数量为6
数量为10
词频为10 数量为1(不存在长度为10的连续字符所以值为0)
1、在原来的代码上加一些东西。定义一个choice的变量,然后输入的词频为choice。再此进行函数操作,具体在代码部分说明。
对于定义输出的n种单词只要在输出时设置一个i 每次i+1知道等于n为止就可以。
结果图片:
对于词频的判断与输出。
判断:
public static Map<String, Integer> getWordFreq(String text,int choice) // 统计单词词频(单词:以4个英文字母开头,跟上字母数字符号,单词以分隔符分割,不区分大小写。)
{
HashMap<String, Integer> wordFreq = new HashMap<String, Integer>();
String content = text.replace(‘\r‘, ‘ ‘);
content = text.replace(‘\b‘, ‘ ‘);
content = text.replace(‘\n‘, ‘ ‘);
String words []= content.split(" ");
for(int i= 0; i<words.length;i++)
{
if (words[i].length()==choice){
int j = 0;
for( j =0;j<choice;j++)
{
char c =words[i].charAt(j);
if(!((c>=‘A‘&& c<=‘Z‘)||(c>=‘a‘&& c<=‘z‘)))
break;
}
if(j==choice)
{
words[i] = words[i].trim().toLowerCase(); // 将字符串转化为小写
if (wordFreq.get(words[i]) == null)
{ // 判断之前Map中是否出现过该字符串
wordFreq.put(words[i], 1);
}
else
wordFreq.put(words[i], wordFreq.get(words[i]) + 1);
}}
}
return wordFreq;
}}
输出:
Map<String, Integer> wordFreq = deal.getWordFreq(content,choice);
/*遍历map*/
for (Map.Entry<String, Integer> entry : wordFreq.entrySet()){
if(i<num){
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println("单词:" + key + ", 数量:" + value);
i=i+1;
byte[] temp=new byte[80];
temp=key.getBytes();
fos.write(temp);//将单词输入文件2.txt
}
我觉得总体来说1+1一定是大于2的,因为两个人可以互相监督,互相协作,碰到的问题也有人可以聊,不会一个人做到一半就想着看别人的代码,另外,两个人对于分工以及各个人的工作都能有效率上的提高,每个人有各个的分工,可以减轻单个人的代码负担。
标签:数字 length str rds ade 统计 standard blog eve
原文地址:https://www.cnblogs.com/1672-zcl/p/9751971.html