public class StringInquiry {
public static void main(String[] args) {
String maxString = "woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijava";
String minString = "java";
int count = getConut(maxString, minString);
System.out.println("java在大串中出现了:" + count + "次");
}
public static int getConut(String maxString, String minString) {
int count = 0;
//先在大串中查一下小串的位置
int index = maxString.indexOf(minString); //4
while (index != -1) {
count++;
int startIndex = index + minString.length(); //4+4
maxString = maxString.substring(startIndex); //wozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun
index = maxString.indexOf(minString); //8
}
return count;
}
}
代码优化后:
public class StringInquiry {
public static void main(String[] args) {
String maxString = "woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijava";
String minString = "java";
int count = getConut(maxString, minString);
System.out.println("java在大串中出现了:" + count + "次");
}
public static int getConut(String maxString, String minString) {
int count = 0;
while (maxString.contains(minString)) {
count++;
maxString = maxString.substring(maxString.indexOf(minString) + minString.length());
}
return count;
}
}



