第2个回答 2021-10-18
//=================单个字符串 ================
/**
* 统计出现次数
*
* @param value 字符串
* @param c 需要统计的字符
* @return
*/
public int appear(String value, char c) {
if (isEmpty(value)) {
return 0;
}
int sum = 0;
for (int i = 0; i < value.length(); i++) {
if (value.charAt(i) == c) {
sum++;
}
}
return sum;
}
//====================多个字符串===============
/**
* 统计出现的次数, 已经计算过的位置 不在进行计算, 比如说 "AAAA"=> "AA" = 2 ,并不会返回 3,
*
* @param value 给定字符串
* @param app 需要统计的字符串
* @return 返回统计数量, 字符串都为空串,也会返回 0,而不是1, 参数任何一方不可用 都会返回0
*/
public int appear(String value, String app) {
if(isEmpty(app)||isEmpty(value)) {
return 0;
}
int sum=0;
int index=0;
while ((index = value.indexOf(app, index)) != -1) {
index+= app.length();
sum++;
}
return sum;
}