Java 统计一句话中相同单词的个数 在线等!! 10

要求的运行结果如下:howmanyincherarein2meters?wordsoccurence-----------------------------------... 要求的运行结果如下:
how many incher are in 2 meters?
words occurence
-----------------------------------
are 1
how 1
in 1
inches 1
many 1
meters 1
展开
 我来答
水凌如梦
2011-12-01
知道答主
回答量:32
采纳率:0%
帮助的人:26万
展开全部
简单地写了一个类,只有一个方法和一个主函数,实现了你要求的功能:
其中countWords(List list,String substr)方法,是统计某个单词在句子中的次数的。
希望对你有所帮助。
代码如下:

package com.yss.string;

import java.util.ArrayList;
import java.util.List;

public class StringTest {

/**
* @param args
*/
public static void main(String[] args) {
StringTest st=new StringTest();
String str="how many inches are in 2 meters?";
String[] sstr=str.split(" ");
List list=new ArrayList();
for(int i=0;i<sstr.length;i++){
String strTemp=sstr[i];
if(strTemp.indexOf("?")>-1){
strTemp=strTemp.substring(0,strTemp.indexOf("?"));
}
list.add(strTemp);
}
System.out.println(sstr.length);
System.out.println("words\toccurence");
System.out.println("are\t"+st.countWords(list, "are"));
System.out.println("how\t"+st.countWords(list, "how"));
System.out.println("in\t"+st.countWords(list, "in"));
System.out.println("inches\t"+st.countWords(list, "inches"));
System.out.println("many\t"+st.countWords(list, "many"));
System.out.println("meters\t"+st.countWords(list, "meters"));
}

public int countWords(List list,String substr){
int num=0;
for(int i=0;i<list.size();i++){
if(list.get(i)!=null){
String s=list.get(i).toString();
if(s.equals(substr)){
num++;
}
}
}
return num;
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式