实现获取字符出现次数和字符最大相同部分功能可以使用Java String类的一些方法,本攻略将详细讲解如何使用这些方法完成这些功能。
Java String方法获取字符出现次数
步骤1:获取输入字符串
首先,需要获取用户输入的字符串。这可以通过Java Scanner类实现。
import java.util.Scanner;
public class StringCount {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String input = scanner.nextLine();
}
}
步骤2:获取字符出现次数
我们可以使用Java String类的split()
方法来将输入字符串分割成一个字符数组,然后再遍历数组,统计每个字符的出现次数。
import java.util.Scanner;
public class StringCount {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String input = scanner.nextLine();
// 将字符串分割成字符数组
char[] charArr = input.toCharArray();
// 统计字符出现次数
int[] count = new int[256];
for (char c : charArr) {
count[c]++;
}
// 输出结果
for (int i = 0; i < 256; i++) {
if (count[i] > 0) {
System.out.printf("字符 %c 出现了 %d 次。\n", i, count[i]);
}
}
}
}
示例1:统计字符串中某个字符出现次数
输入:abracadabra
,统计字符a
出现次数。
输出:
请输入一个字符串:abracadabra
字符 a 出现了 5 次。
示例2:统计URL中数字出现次数
输入:https://www.baidu.com/abc/123/xyz/321.html
,统计数字出现次数。
输出:
请输入一个字符串:https://www.baidu.com/abc/123/xyz/321.html
字符 0 出现了 2 次。
字符 1 出现了 2 次。
字符 2 出现了 2 次。
字符 3 出现了 2 次。
字符 7 出现了 1 次。
字符 8 出现了 1 次。
字符 9 出现了 1 次。
Java String方法获取字符最大相同部分
步骤1:获取输入字符串
同样,首先需要获取用户输入的两个字符串。
import java.util.Scanner;
public class MaxSubstring {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入第一个字符串:");
String s1 = scanner.nextLine();
System.out.print("请输入第二个字符串:");
String s2 = scanner.nextLine();
}
}
步骤2:求两个字符串的最大相同部分
我们可以使用Java String类中的length()
方法和substring()
方法来求两个字符串中的最大相同部分。首先比较两个字符串中的每一个子串,然后将相同的子串长度依次比较,最终得到最大相同部分。
import java.util.Scanner;
public class MaxSubstring {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入第一个字符串:");
String s1 = scanner.nextLine();
System.out.print("请输入第二个字符串:");
String s2 = scanner.nextLine();
String maxSubstr = ""; // 最大相同子串
int maxLength = 0; // 最大相同子串长度
for (int i = 0; i < s1.length(); i++) {
for (int j = i + 1; j <= s1.length(); j++) {
String substr = s1.substring(i, j);
if (s2.contains(substr) && substr.length() > maxLength) {
maxLength = substr.length();
maxSubstr = substr;
}
}
}
// 输出结果
if (maxSubstr.equals("")) {
System.out.println("两个字符串没有相同部分。");
} else {
System.out.printf("最大相同部分为:%s,长度为 %d。", maxSubstr, maxLength);
}
}
}
示例1:求两个字符串中的最大相同部分
输入:abcabcaa
和abacabca
。
输出:
请输入第一个字符串:abcabcaa
请输入第二个字符串:abacabca
最大相同部分为:abca,长度为 4。
示例2:求两个字符串中的最大相同部分
输入:hello world
和helloworld
。
输出:
请输入第一个字符串:hello world
请输入第二个字符串:helloworld
最大相同部分为:world,长度为 5。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java String方法获取字符出现次数及字符最大相同部分示例 - Python技术站