确定子串在整串中出现的次数(用Java语言编写)

确定子串在整串中出现的次数(用Java语言编写)

问题描述:

整串为yeyeyeyeydddyeyey,子串为yey,确定子串在整串中出现的次数(用Java语言编写)

public class Demo {
    public static void main(String[] args) {
        // 定义俩个字符串
        String shortStr = "yey";
        String longStr = "yeyeyeyeydddyeyey";
        // 调用searchCount方法
        int count = searchCount(3, shortStr, longStr);
        // 输出字符串出现的次数
        System.out.println("yey出现的次数是:" + count);
    }
    // 定义searchCount方法,来返回字符串出现的个数
    public static int searchCount(int startIndex, String shortStr, String longStr) {
        // 将长字符串截取成从指定位置开始的字符串
    	longStr = longStr.substring(startIndex);
    	// 定义一个count来存放字符串出现的次数
        int count = 0;
        // 调用String类的indexOf(String str)方法,返回第一个相同字符串出现的下标
        while (longStr.indexOf(shortStr) != -1) {
            // 如果存在相同字符串则次数加1
            count++;
            // 调用String类的substring(int beginIndex)方法,获得第一个相同字符出现后的字符串
            longStr = longStr.substring(longStr.indexOf(shortStr)
                    + shortStr.length());
        }
        // 返回次数
        return count;
    }
}

如上,满意请采纳,谢谢!

循环截取整串中的3个字符,用if和indexOf()函数和子串对比,进入一次if,次数加一

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632