请使用java语言编写一段程序,统计这段文字中单词的个数,并输出其中由四个字母组成的单词
2个回答
展开全部
public static void count(String str){
String[] count=str.splict(" ");
system.out.print(count.length());
for(int i=0;i<count.length();i++){
if(count[i].length()==4)
system.out.println(count[i]);
}
}
String[] count=str.splict(" ");
system.out.print(count.length());
for(int i=0;i<count.length();i++){
if(count[i].length()==4)
system.out.println(count[i]);
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你是想统计 单词?还是字符串 不明白..... 如果是统计单词的话我回避一下
追问
字符串的吧,简单一点就行,谢谢
追答
//我刚才有点事,刚回就赶紧给你写了个小demo。并做了一点小扩充。希望能满足你的需求。如果可以,希望你采纳,给个分。有事再追问。。。时间有点紧迫,有关判断的地方还不够精简,希望各位指正,拍砖。
public static void main(String[] args) {
//getCharsByRegex("2uos3撒alaask大家、】【23ksssh",4);//这行是你要的结果
getCharsByRegex("2uos3撒alaask大家、】【23ksssh",3);
}
/**
* @param str 传入字符串
* @param len 连续字符个数(你可以写任何整数: 4 或 6 或其它,我在这里给了个3,你可以写成4)
*/
static public void getCharsByRegex(String str,int len){
List list = new ArrayList();
if(str != null && str.length() > 0 && len > 0){
int cnt = 0,restart = -1,start = -1;
char[] chs = str.toCharArray();
for (int i = 0; i < chs.length; i++) {
if((chs[i]+"").matches("[a-zA-Z]")){
++cnt;
if(restart == -1){start = i;}
if(start != -1){restart = 0;}
if(restart != -1 && start != -1 && (i-start+1) == len){
list.add(str.substring(start,i+1));
//System.out.println(i + "--" + start + "--" + str.substring(start,i+1));
restart = -1;start = -1;
}
}else{
restart = -1;
}
}
for (String string : list) {
System.out.println(string);
}
System.out.println("字符个数:"+cnt);
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询