JAVA语言获取一个字符串在另一个字符串中出现的次数
java语言编程实现一个短的字符串在另一个长的字符串中出现的次数,这个比较简单,主要使用java字符串的indexOf()方法,代码:
首先定义两个字符串并获取它们的长度:
//定义两个字符串
String OneStr = "ckkccbacadkabckebfkabkskabc";
String ToStr = "abc";
//获取两个字符串的长度
int OneLength = OneStr.length();
int ToLength = ToStr.length();
然后定义两个整型的变量,count记录出现的次数、index记录每次找到一个以后位置,然后用循环进行查找,最后输出结果:
//定义两个整数,count记录出现的次数、index记录每次找到一个以后位置
int count = 0;
int index = 0;
//if判断查找的字符串与总字符串的长度,如果查找的字符串较长,则直接输出0
//while循环查找指定字符串在总字符串中出现的次数
if (OneLength >= ToLength) {
while ((index = OneStr.indexOf(ToStr, index)) != -1) {
count++;
index += ToLength;
}
}
System.out.println(count);
最后完整代码:
public static void main(String[] args) {
//定义两个字符串
String OneStr = "ckkccbacadkabckebfkabkskabc";
String ToStr = "abc";
//获取两个字符串的长度
int OneLength = OneStr.length();
int ToLength = ToStr.length();
//定义两个整数,count记录出现的次数、index记录每次找到一个以后位置
int count = 0;
int index = 0;
//if判断查找的字符串与总字符串的长度,如果查找的字符串较长,则直接输出0
//while循环查找指定字符串在总字符串中出现的次数
if (OneLength >= ToLength) {
while ((index = OneStr.indexOf(ToStr, index)) != -1) {
count++;
index += ToLength;
}
}
System.out.println(count);
}
运行结果截图:
这里的难点就在于indexOf()方法的使用,它在这里的意思是将指定字符串(ToStr)从原字符串(OneStr)中指定的位置(index)开始,进行查找与指定字符串(ToStr)相同的元素;indexOf()的具体用法还有很多,详细可以到官方文档查看。