获取一个字符串在另一个字符串中出现的次数。 比如:获取“ab”在 “abkkcadkabkebfkaabkskab” 中出现的次数
说明:
找到字串在主串出现的位置,出现一次计数器加1,在往后找直到查完。
public int getCount(String mainStr,String subStr){
int mainLength = mainStr.length();//主串的长度
int subLength = subStr.length();//字串的长度
int count=0;//字串出现的次数
int index=0;
//str1.indexOf("lol")
if(mainLength > subLength ){
//方式一:
// while( (index = mainStr.indexOf(subStr)) != -1){
// count++;
// mainStr = mainStr.substring(index + subStr.length());
// }
// return count;
//对方式一的改进:
while((index = mainStr.indexOf(subStr,index)) != -1){
count++;
index+=subLength;
}
return count;
}
return 0;
}
测试:
@Test
public void test(){
String mainStr = "abkkcadkabkebfkaabkskab";
String subStr = "ab";
int count = getCount(mainStr, subStr);
System.out.println(count);//4
}
结果: