java 查询字符串中某串字符出现的次数
时间: 2024-09-20 22:03:53 浏览: 70
在Java中,你可以使用`indexOf()`、`lastIndexOf()`或`split()`等方法来查询字符串中某个字符或子串出现的次数。这里提供一种常见的使用`split()`和`length`属性的方法:
```java
public static int count Occurrences(String str, String substring) {
// 使用正则表达式将原始字符串按照substring分割成数组
String[] splitArray = str.split(substring);
// 出现次数等于分隔后的数组长度减一(因为原字符串中含有一个完整的substring)
return splitArray.length - 1;
}
```
这个函数会返回`substring`在`str`中完整出现的次数。如果`substring`在整个`str`中不连续出现,例如`"hello world"`中有两个`"l"`,那么它只会计算出两次。
如果你需要精确计算子串出现的所有情况(包括部分匹配),可以使用循环配合`indexOf()`:
```java
public static int totalOccurrences(String str, String substring) {
int count = 0;
int index = 0;
while ((index = str.indexOf(substring, index)) != -1) {
count++;
index += substring.length(); // 移动查找的位置到下一个可能的位置
}
return count;
}
```
这里使用了`indexOf()`的第二个参数作为搜索的起始位置,防止无限递归。
阅读全文