当前位置: 代码迷 >> J2SE >> java中怎么确定一个字符串在另一个字符串中出现的次数
  详细解决方案

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

热度:12   发布时间:2016-04-24 16:29:54.0
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要哪种?
  相关解决方案