获取一个字符串在一个长字符串中出现的次数

原创 2015年11月18日 20:00:49
/*
 获取一个字符串 kk 在一个长字符串中出现的次数
 思路:
 	1、定义一个计数器
 	2、获取 kk 第一次出现的位置。
 	3、从第一次出现位置后剩余的字符串中继续获取 kk 出现的位置,
 	        每获取一次就计数一次。
 	4当获取不到时,计数完成,返回计数器的值。
 */
public class Exercise2 {
	//方式一
	public static int getSunCount(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 getSunCount_2(String str,String key){
		int count=0;
		int index=0;
		while((index=str.indexOf(key,index)) != -1)
		{
			sop("k出现的下标值index="+index);
			index=index+key.length();
			count++;
		}
		return count;
	}
	public static void sop(Object obj){
		System.out.println(obj);
	}
	public static void main(String[] args) {
		String s="kkhjgsysdkkgysgdskkgysdgskkbsdykk";
		sop("kk出现的个数count="+getSunCount(s,"kk"));
		sop("kk出现的个数count="+getSunCount_2(s,"kk"));
	}
}


结果图:


版权声明:本文为博主原创文章,如需转载请注明出处。

相关文章推荐

java "aababcabcdabcde",获取字符串中每一个字母出现的次数

java "aababcabcdabcde",获取字符串中每一个字母出现的次数

Java编程机试:获取某一字符串中(只要字母),每一个字母出现的次数输出格式为a(x)b(y)c(z).....m(n)

Java编程:Map集合编程,要求如下:获取某一字符串如:"ag cCCCde3766ddgdfelakgjh"中,每一个字母(只要字母)出现的次数;要求输出格式是:a(2)b(1)h(4)........

JAVA 获取字符串中每一个字母出现的次数 TreeMap 解

初学map集合,ACM 题 用java集合解啊   这道题用数组也完全可以解  ,  我觉得...

java基础—统计一个字符串中各个字符出现的次数

统计一个字符串中各个字符出现的次数 import java.util.Iterator; import java.util.Set; import java.util.TreeMap; publi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:获取一个字符串在一个长字符串中出现的次数
举报原因:
原因补充:

(最多只允许输入30个字)