日期:2014-05-20  浏览次数:20576 次

请教大家.关于统计不同单词的问题
编写一个程序,用于统计单词的总数,不同单词的数目。(假设输入文件中只包含字母和空格)      
       
    eg:       I       love       Beijing       and       I       love       Shanghai.      
    单词总数:7      
    不同单词数目:5      

我之前做的一个只能统计相临的两个单词.
do{
    if(temp[i]==temp[i-1]){
        j-=1;
    }
    i++;
    j++;
}while(i <temp.length);
现在想实现题目的要求,不知道思路,请教大家了

------解决方案--------------------
import java.util.*;

public class TestStringTokenizer {
private String temp= "I love Beijing and I love Shanghai ";
public TestStringTokenizer() {
super();
doSomeThing(temp);
}

public static void main(String[] args) {
new TestStringTokenizer();
}

private void doSomeThing(String temp){
StringTokenizer st=new StringTokenizer(temp);
List list=new ArrayList();
Set set=new HashSet();
while(st.hasMoreTokens()){
String tempStr=(String)st.nextToken();
list.add(tempStr);
set.add(tempStr);
}
System.out.println(list.size());
System.out.println(set.size());
}
}
------解决方案--------------------
用set可以计算出不同单词的个数,单词总个数就是读一个加1。
------解决方案--------------------
楼上的楼上的,对!
------解决方案--------------------
up