在JAVA当中,我们可以通过调用方法解决很多的问题,比如说查找某些特定的关键字在段落中出现的次数。
/* 段落内容是:wo ai java, wo zhen ai java, wo zhen de ai java, wo zhen de hen ai java, xin bu xin wo ai java.
* 需要查找的关键词是:java
*/
public class Select {
public static void main(String[] args) {
String str = "wo ai java, wo zhen ai java, wo zhen de ai java, wo zhen de hen ai java, xin bu xin wo ai java.";
//定义初始值
int num = 0;
String s = "java";
//第一次出现索引的位置:
int index = str.indexOf(s);
while(index != -1) {
num++;
//获取截取后的新段落:
int startIndex = index + s.length();
str = str.substring(startIndex);
//在新段落中查找该关键词的索引
index = str.indexOf(s);
}
System.out.println("java关键词在段落中出现的次数是:"+num);
}
}
通过调用索引截取新字符串,可以满足我们的统计需求,可多次截取新字符串的操作对于新手小白来说,可能有些繁琐,指尖在这里提供另一种思路,通过字符串的替换功能将关键词替换成单一的字符格式,直接查找字符出现的次数,也能实现我们的需求。
/* 段落内容是:wo ai java, wo zhen ai java, wo zhen de ai java, wo zhen de hen ai java, xin bu xin wo ai java.
* 需要查找的关键词是:java
*/
public class Select {
public static void main(String[] args) {
String str = "wo ai java, wo zhen ai java, wo zhen de ai java, wo zhen de hen ai java, xin bu xin wo ai java.";
//初始化数值,将关键词替换成char类型的字符方便查找
int count = 0;
String s = str.replaceAll("java","*");
char ch = '\u0000';
//运用for循环查找新字符出现的次数
for(int i = 0; i < s.length()-1 ; i++) {
ch = s.charAt(i);
if(ch == '*') {
count++;
}
}
System.out.println("java关键词在段落中出现的次数是:"+count);
}
}