黑马程序员技术交流社区
标题:
Java基础--String练习2--一个字符串在另一字符串中出现次数
[打印本页]
作者:
michael_wlq
时间:
2015-9-14 19:34
标题:
Java基础--String练习2--一个字符串在另一字符串中出现次数
要求: 获取一个字符串在另一个字符串中出现的次数
例如字符串"kk"在字符串"abkkcdkkefkkskk"中出现的次数
思路: 1. 定义个计数器;
2. 获取kk第一次出现的位置;
3. 从第一次出现位置后剩余的字符串中继续获取kk出现的位置,每获取一次就计数一次;
4. 当获取不到时,计数完成。
实现试例:
public class StringTest3 {
//实现方式一
public static int getSubCount(String str, String key) {
int count = 0;
int index = 0;
while ((index = str.indexOf(key)) != -1) {
sop("str=" + str);
str = str.substring(index + key.length());
count++;
}
return count;
}
//实现方式二
public static int getSubCount_2(String str, String key) {
int count = 0;
int index = 0;
while ((index = str.indexOf(key, index)) != -1) {
sop("index=" + index);
index = index + key.length();
count++;
}
return count;
}
public static void main(String[] args) {
String str = "kkabkkcdkkefkks";
// /sop("count====="+str.split("kk").length);不建议使用。
sop("count=" + getSubCount_2(str, "kk"));
}
public static void sop(String str) {
System.out.println(str);
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2