第二次作业

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


test.java
public class test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Chuli chuli = new Chuli();
}
}

Chuli.java

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

public class Chuli {
public Chuli(){
String str="Hello Hello World My First Unit Test";
String[] items = str.split(" ");
Map<String, Integer> map = new HashMap<String, Integer>();
for (String s : items) {
if (map.containsKey(s))
map.put(s, map.get(s) + 1);
else {
map.put(s, 1);
}
}
List<Entry<String, Integer>> list = new ArrayList<Entry<String, Integer>>();
for (Entry<String, Integer> entry : map.entrySet()) {
list.add(entry);
}
Collections.sort(list, new EntryComparator());

for (Entry<String, Integer> obj : list) {
System.out.println(obj.getKey() + "\t" + obj.getValue());
}
}
}

EntryComparator.java
public class EntryComparator implements Comparator<Entry<String, Integer>> {
public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
return o1.getValue() > o2.getValue() ? 0 : 1;
}
}


运行结果如下:

 

第二题:

(1)把一个英语句子中的单词次序颠倒后输出。例如输入“how are you”,输出“you are how”;
(2)编写单元测试进行测试;
(3)用ElcEmma查看代码覆盖率,要求覆盖率达到100%。

test.java
public class test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Chuli chuli = new Chuli();
}
}

Chuli.java

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

public class Chuli {
public Chuli(){
String str="Hello Hello World My First Unit Test";
String[] items = str.split(" ");
Map<String, Integer> map = new HashMap<String, Integer>();
for (String s : items) {
if (map.containsKey(s))
map.put(s, map.get(s) + 1);
else {
map.put(s, 1);
}
}
List<Entry<String, Integer>> list = new ArrayList<Entry<String, Integer>>();
for (Entry<String, Integer> entry : map.entrySet()) {
list.add(entry);
}
Collections.sort(list, new EntryComparator());

for (Entry<String, Integer> obj : list) {
System.out.println(obj.getKey() + "\t" + obj.getValue());
}
}
}

EntryComparator.java
public class EntryComparator implements Comparator<Entry<String, Integer>> {
public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
return o1.getValue() > o2.getValue() ? 0 : 1;
}
}

posted @ 2016-03-27 16:52  不一样的邓超  阅读(138)  评论(2)    收藏  举报