一个小程序,输出字符串str中每个小写字母的数量,按字母顺序排列。
我是从小写字母a开始删除字符,然后用.length()计算数量,a++,重复操作,代码如下。
结果发现大写字母和数字也能被计算,可是他们不是排在a前面吗,a++为什么会取到大写字母和数字的值。public class Test1 { public static void main(String[] args) {
String str="acklabe22fdADADVjkln";
char chr ='a';
String result="";
while (str.length()>0) {
int l1=str.length();
String oldstr=new String().valueOf(chr);
str=str.replace(oldstr, "");
int count=l1-str.length();
if(count>0){
result+=count+oldstr+" ";
}
chr+=1;
}
System.out.println(result);
}
}
我是从小写字母a开始删除字符,然后用.length()计算数量,a++,重复操作,代码如下。
结果发现大写字母和数字也能被计算,可是他们不是排在a前面吗,a++为什么会取到大写字母和数字的值。public class Test1 { public static void main(String[] args) {
String str="acklabe22fdADADVjkln";
char chr ='a';
String result="";
while (str.length()>0) {
int l1=str.length();
String oldstr=new String().valueOf(chr);
str=str.replace(oldstr, "");
int count=l1-str.length();
if(count>0){
result+=count+oldstr+" ";
}
chr+=1;
}
System.out.println(result);
}
}
package com.youyu.day0417;public class Test { public static void main(String[] args) {
lowcaseCount("sdDSSLKAFJddjsklfAFDK5445");
}
//小写字母 a-x 对应int范围 97-120
public static int lowcaseCount(String str){
//计数器
int count=0;
for (int i = 0; i < str.length(); i++) {
//获取单字符
char c=str.charAt(i);
if(97<=(int)c &&(int)c<=120){
count++;
System.out.println(c);
}
}
System.out.println(count);
return count;
}
}
String str="acklabe22fdADADVjkln";
char chr ='a';
String result="";
while (str.length()>0) {
//注意你的结束条件,当所有小写字母都遍历过后,字符串Str的值为“22ADADV”,length>0,所以还会继续执行下去
int l1=str.length();
String oldstr=new String().valueOf(chr);
str=str.replace(oldstr, "");
int count=l1-str.length();
if(count>0){
result+=count+oldstr+" ";
}
chr+=1;
}
System.out.println(result);
}
}