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

原创 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编程机试:获取某一字符串中(只要字母),每一个字母出现的次数输出格式为a(x)b(y)c(z).....m(n)

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

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

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

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

寻找一个字符串中连续出现次数最多的子串

算法描述 首先获得后缀数组,然后 1.第一行第一个字符a,与第二行第一个字符b比较,不等,则 2.第一行前两个字符ab,与第三行前两个字符cb比较,不等,则 3.第一行前三个字符abc,与第四...

求一个字符串中连续出现的次数最多的子串

#include "stdafx.h" #include using namespace std; //求一个字符串中连续出现的次数最多的子串。例如字符串“abababc”,最多连续出现的为ab,连...

求一个字符串中连续出现的次数最多的子串

这个题目不是编程珠玑上看到的,但是解法用到的数据结构在编程珠玑上有讲到,先归类到这里。 求一个字符串中连续出现的次数最多的子串。例如字符串“abababc”,最多连续出现的为ab,连续出现三次。...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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