计算字符串中子串出现的次数

作为一名经验丰富的开发者,你需要教会一位刚入行的小白如何实现在Java中计算字符串中子串出现的次数。下面是一份详细的指南,包括整体流程和每个步骤所需的代码。

整体流程

步骤 描述
第一步 接收用户输入的原始字符串和要查找的子串
第二步 使用Java中的String方法查找子串的出现次数
第三步 输出子串出现的次数

第一步:接收用户输入的原始字符串和要查找的子串

首先,我们需要接收用户输入的原始字符串和要查找的子串。可以使用Java中的Scanner类来获取用户输入的字符串。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入原始字符串:");
        String originalString = scanner.nextLine();

        System.out.print("请输入要查找的子串:");
        String subString = scanner.nextLine();

        // 在这里进行下一步操作
    }
}

在上述代码中,我们创建了一个Scanner对象来接收用户输入。首先,我们提示用户输入原始字符串,并使用nextLine()方法获取用户输入的字符串。然后,我们提示用户输入要查找的子串,并再次使用nextLine()方法获取用户输入的子串。

第二步:使用Java中的String方法查找子串的出现次数

接下来,我们使用Java中的String方法来查找子串在原始字符串中出现的次数。可以使用indexOf()方法实现此功能。

int count = 0;
int index = originalString.indexOf(subString);
while (index != -1) {
    count++;
    index = originalString.indexOf(subString, index + 1);
}

在上述代码中,我们使用一个循环来查找子串在原始字符串中的位置。indexOf()方法返回子串在原始字符串中第一次出现的位置,如果未找到子串,indexOf()方法将返回-1。我们使用一个变量count来记录子串出现的次数,初始值为0。在每次找到子串后,我们将count加1,并在下一次查找时从上一次找到的位置的下一个位置开始。

第三步:输出子串出现的次数

最后,我们输出子串在原始字符串中出现的次数。

System.out.println("子串 \"" + subString + "\" 在原始字符串 \"" + originalString + "\" 中出现了 " + count + " 次。");

在上述代码中,我们使用println()方法输出子串在原始字符串中出现的次数。使用+运算符来连接字符串和变量。

完整代码

以下是完整的代码,包括用户输入、查找子串的逻辑和输出结果。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.print("请输入原始字符串:");
        String originalString = scanner.nextLine();

        System.out.print("请输入要查找的子串:");
        String subString = scanner.nextLine();

        int count = 0;
        int index = originalString.indexOf(subString);
        while (index != -1) {
            count++;
            index = originalString.indexOf(subString, index + 1);
        }

        System.out.println("子串 \"" + subString + "\" 在原始字符串 \"" + originalString + "\" 中出现了 " + count + " 次。");
    }
}

现在,你已经了解了在Java中计算字符串中子串出现的次数的整个流程,并且知道每个步骤所需的代码。希望这篇文章对你有帮助!