软件测试第二次作业 - 写一个Java程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。

题目一:

1. 写一个Java程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。(单词之间用空格隔开,如“Hello World My First Unit Test”);

2. 编写单元测试进行测试;

3. 用ElcEmma查看代码覆盖率,要求覆盖率达到100%。

Demo类:

 1 import java.util.HashMap;
 2 import java.util.Iterator;
 3 import java.util.Map;
 4 import java.util.Set;
 5
 6 public class Demo {
 7
 8     public void countWord(String str) {
 9         String[] wordsArray = str.split(" ");
10         Map<String, Integer> wordsMap = new HashMap<String, Integer>();
11         for (String word : wordsArray) {
12
13             if (wordsMap.containsKey(word)) {
14                 wordsMap.put(word, wordsMap.get(word) + 1);
15             } else {
16                 wordsMap.put(word, 1);
17             }
18         }
19
20         Set<String> setKey = wordsMap.keySet();
21         Iterator<String> itKey = setKey.iterator();
22         while (itKey.hasNext()) {
23             String word = itKey.next().toString();
24             int count = wordsMap.get(word);
25
26             System.out.println("单词    " + word + "  出现" + count + "次");
27
28         }
29     }
30
31 }

JUnit单元测试类:

 1 import static org.junit.Assert.*;
 2 import org.junit.Test;
 3
 4 public class DemoTest {
 5
 6     @Test
 7     public void testCountWord() {
 8         Demo demo = new Demo();
 9         demo.countWord("Hello World Hello Java Hello Test");
10     }
11
12 }

测试:

EclEmma代码覆盖率:

时间: 2024-12-28 15:33:47

软件测试第二次作业 - 写一个Java程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。的相关文章

第一个JAVA程序解析

上一篇博客中,我们编写了第一个JAVA程序并使用最原始的方式对其进行编译运行,很多文章或书籍中对该种编译运行方式不做介绍,但是我认为这有助于我们更好的了解.学习JAVA,是不可忽略的一部分,在我身边有很多人,学完一段时间JAVA后,只知道如何在IDE中进行开发,却不知脱离IDE后该如何运行,不得不说这也是一种悲哀. 言归正传,我们来看一下上一篇博客中的例子"Hello World",这也是几乎所有的编程语言都会编写的一个例子,非常的经典. 下面我们就来分析一下: /**  *  我的第

当世界上只剩下一个Java程序员

公元2050年,世界上只剩下了一个Java程序员. 你可能要问了,别的人都去哪儿了?原因很简单, Java没落了. 大约在2030年左右,出现了一个叫做X的语言,它既能做系统级开发(操作系统.数据库.编译器),也能做服务器端的开发,手机端,Web端都不在话下. 更为重要的是,这个新的编程语言和人类的自然语言很接近,无论大人小孩,稍微一学,很快就可以来编程.于是排名前100的语言统统消失了, 程序员们都失业了. Java也不例外,这个昔日的霸主在留下了一堆庞大而复杂的系统以后就不见了. Java程

软件测试 第二次作业

一:把一个英语句子中的单词次序颠倒后输出.例如输入“how are you”,输出“you are how” #include<stdio.h> int main() { char sentence[100]; int len=0,j,wordlen=0; gets(sentence); while(sentence[len]) len++; for(j=len-1;j>=0;j--) { if(sentence[j]>='a'&&sentence[j]<='

【Java】Java_03第一个Java程序

第一个JAVA程序的编写和运行 1.使用记事本编辑 public class Welcome{ public static void main(String[] agrs){ System.out.println("Hello World!"); } } 2.保存为:d://mycode/Welcome.java 3.进入控制台,进入:d://mycode/目录. 4.javac Welcome.java 5.java Welcome 6.出现运行结果: JAVA程序运行机制分析 计算

跟着学!教你开发第一个Java程序

今天我们的目标是开发人生中的第一个Java程序,虽然可能会很简单,但是这小小的一步却是跨入IT行业的一大步!下面我们来一起来仔细的了解开发的流程. 准备工作 1,作为一名准程序猿自备一台电脑那是必不可少的,至于配置嘛,只要不是“小霸王”学习机就好. 2,请在电脑上建立如下的文件夹: D:\java\jdk  存放Java环境 D:\java\tool  存放其它开发的工具 D:\java\code  存放Java程序 D:\java\doc  存放其它的一些文档资料 备注: 上面的目录仅仅是一种

一个java程序员自学IOS开发之路(十三)

2015/12/09 Day 46 今天学习多线程 多线程的优缺点 优点 充分发挥多核处理器优势,将不同线程任务分配给不同的处理器,真正进入“并行运算”状态 将耗时的任务分配到其他线程执行,由主线程负责统一更新界面会使应用程序更加流畅,用户体验更好 当硬件处理器的数量增加,程序会运行更快,而程序无需做任何调整 缺点 新建线程会消耗内存空间和CPU时间,线程太多会降低系统的运行性能 iOS的三种多线程技术 NSThread  使用NSThread对象建立一个线程非常方便 但是!要使用NSThrea

一个Java程序的执行过程(转)

我们手工执行java程序是这样的: 1.在记事本中或者是UE的文本编辑器中,写好源程序: 2.使用javac命令把源程序编译成.class文件: 编译后的.class(类字节码)文件中会包含以下内容: ConstantPool:符号表: FieldInfo:类中的成员变量信息: MethodInfo:类中的方法描述: Attribute:可选的附加节点. FieldInfo节点包含成员变量的名称,诸如public,private,static等的标志.ConstantValue属性用来存储静态的

一个java程序员自学IOS开发之路(四)

根据上图,由于我是一个Java程序员,前面两个阶段还是学的比较快的,但是由于电脑配置不行,光是开启虚拟机登陆OS系统就卡的不要不要的了,在那里面写代码简直是煎熬= =,后面的UI学习又要启动ios模拟器,根本无法进行. 于是下定决心,入手一台Macbook pro,告别我用了四年的联想~今天本本到货啦,哈哈^_^,可以愉快的继续了 2015/10/14 Day 15 为了便于开发者打造各式各样的优秀app,UIKit框架提供了非常多功能强大又易用的UI控件 2015/10/16 Day 16 第

第三节:我的第一个Java程序

一.编写我的第一个Java程序流程: 1.新建一个文本文档:在电脑任意位置"右击"----->选择"新建"----->选择"文本文档": 2.修改文档名与后缀名:"右击"新建的文本文档------>选择"重命名"----->重命名为"Sample01.java",此时会弹出"下面的警告框",选择"是",如下图: 注意:如果没