示例:有字符串“abcdaaadd”,想知道a的个数。
(注:substring(0,0+1)取出左起第一个字符,substring(1)去掉左起第一个字符)
代码一:
//我写的
String m = "abcdaaadd";
int j = 0,k = 0;
for(int i=0;i<9;i++) {
j = (m.substring(0, 0+1)).indexOf("a"); //substring(0,0+1)取出左起第一个字符,substring(1)去掉左起第一个字符。
if(j!=-1) {
k++;
}m = m.substring(1);
}System.out.println("a目前有" + k + "个。");
代码二:
//老师的
String s = "abcdaaadd";
int count = 0;
for(int i=0;i<s.length();i++) {
if(s.substring(i, i+1).equals("a")) {
count++;
}
}System.out.println("a目前有" + count + "个。");
代码三:
String m = "abcdaaadd",n = m;
int j,k = 0;
String s;
for(int i=0;i<n.length();i++) {
System.out.print("第" + (i+1) + "次循环" + "\t");
s = m.substring(0, 0+1);
if(i<=5) {
System.out.print("m是:" + m + "\t");
}else {
System.out.print("m是:" + m + "\t" + "\t");
}
System.out.print("m的第一个字符是:" + s + "\t");
j = s.indexOf("a");
if(j!=-1) {
k++;
System.out.print("找到一个a啦!" + "\t");
}else {
System.out.print("没有找到a" + "\t" + "\t");
}
m = m.substring(1);
System.out.println("现在m是:" + m + "\t");
}
System.out.println("a一共有" + k + "个。");
代码三运行结果: