首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java中怎么确定一个字符串在另一个字符串中出现的次数

2012-01-24 
java中如何确定一个字符串在另一个字符串中出现的次数比如 ok 字符串在 nihaoksdoksad 中出现两次[解

java中如何确定一个字符串在另一个字符串中出现的次数
比如 "ok "字符串在 "nihaoksdoksad "中出现两次

[解决办法]
上面写错了:
String str1 = "nihaoksdoksad ";
String str2 = "ok ";
int total = 0;
for (String tmp = str1; tmp != null&&tmp.length()> =str2.length();){
if(tmp.indexOf(str2) == 0){
total ++;
}
tmp = tmp.substring(1);
}
System.out.println(str1+ "中含有 "+total+ "个 "+str2);
上面我写的算法是字符可以覆盖的查找:
下面给你一种不允许字符覆盖的查找:
String str1 = "nihaokokosdokosad ";
String str2 = "oko ";
int total = 0;
for (String tmp = str1; tmp != null&&tmp.length()> =str2.length();){
if(tmp.indexOf(str2) == 0){
total ++;
tmp = tmp.substring(str2.length());
}else{
tmp = tmp.substring(1);
}
}
System.out.println(str1+ "中含有 "+total+ "个 "+str2);

对于
String str1 = "nihaokokosdokosad ";
String str2 = "oko ";
两种查找结果是有区别的,不知道lz要哪种?

热点排行