Java实现的词频统计——单元测试
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java实现的词频统计——单元测试相关的知识,希望对你有一定的参考价值。
前言:本次测试过程中发现了几个未知字符,这里将其转化为十六进制码对其加以区分。
1)保存统计结果的Result文件中显示如图:
2)将其复制到eclipse环境下的切分方法StringTokenizer中却没有显示;
复制前:
复制后:
前后看似没有任何变化;
3)改动后的统计结果:
因此为了检测这个字符做了一个将其转化为十六进制码的小程序:
1 String t = "\0"; 2 String s = "\0"; 3 byte[] bbb = t.getBytes(); 4 int[] n = new int[bbb.length]; 5 for (int i = 0; i < n.length; i++) { 6 n[i] = bbb[i] & 0xff; 7 } 8 for (int j = 0; j < n.length; j++) { 9 System.out.println(Integer.toString(n[j], 0x10)); 10 } 11 System.out.println("-----------------"); 12 byte[] b = s.getBytes(); 13 int[] in = new int[b.length]; 14 for (int i = 0; i < in.length; i++) { 15 in[i] = b[i] & 0xff; 16 } 17 for (int j = 0; j < in.length; j++) { 18 System.out.println(Integer.toString(in[j], 0x10)); 19 }
运行结果如下:
从结果可以看出,这个未知字符是由三个字符组成,而类似的难以识别的字符还有很多。
此外,在做单元测试之前还做了一项额外的测试——read()方法读取文件时单次读取的字符数量对效率的影响:
选取了从1-128、129-256、257-384、385-512四个范围,分别进行了测试。
总测试次数2560次,耗时10min左右,统计结果:
当取值在200左右时运行速率最快,平均值在210ms左右.
单元测试
1.
以上是关于Java实现的词频统计——单元测试的主要内容,如果未能解决你的问题,请参考以下文章