zoukankan      html  css  js  c++  java
  • (1)写一个程序,用于分析一个字符串中各个单词出现的频率,并将单词和它出现的频率输出显示。(单词之间用空格隔开,如“Hello World My First Unit Test”); (2)编写单元测试进行测试; (3)用ElcEmma查看代码覆盖率,要求覆盖率达到100%。

    import java.util.HashMap;
    import java.util.Map;
    import java.util.Set;

    public class test1 {
    // 统计结果用,采用Character即char做键(Key)
    private Map<Character, Integer> countMap = new HashMap<Character, Integer>();

    public void countChar(String str) {
    char[] chars = str.toCharArray();// 将字符串转换成字符char数组
    // 循环,开始统计
    for (char ch : chars) {
    // 判断字符是否存在
    if (!countMap.containsKey(ch)) {
    // 不存在,在Map中加一个,并设置初始值为0
    countMap.put(ch, 0);
    }
    // 计数,将值+1
    int count = countMap.get(ch);
    countMap.put(ch, count + 1);
    }

    // 输出结果
    Set<Character> keys = countMap.keySet();
    for(Character ch : keys){
    System.out.println("字符" + ch + "出现次数:" + countMap.get(ch));
    }

    }

    public static void main(String[] args) {

    test1 test = new test1();
    test.countChar("Hello World My First Unit Test");
    }
    }

    单元测试代码:

    import org.junit.Test;

    import junit.framework.TestCase;


    public class test1Test {
    @Test

    public void test() throws Exception {
    // 测试方法
    test1 test = new test1();
    test.countChar("Hello World My First Unit Test"); // 注:不支持中文
    }

    }

  • 相关阅读:
    day 7-5 守护线程
    小练习:思考下述代码的执行结果有可能是哪些情况?为什么?
    深浅copy详解
    练习题,使用多线程编写一个简单的文本处理工具
    harbor搭建v1.8.3
    mysql常用命令
    windows安装MySQL
    centos用户和用户组的管理及简单操作
    CentOS 7下安装谷歌浏览器
    typecho管理员修改密码
  • 原文地址:https://www.cnblogs.com/cheerwyh/p/5324469.html
Copyright © 2011-2022 走看看