给定一个字符串,要统计其中大小写字母的个数。一般来说会用Character类中的isUpperCase和isLowerCase方法:
public class Count{
public static void main(String []args){
String s = "2334badDDFDc%$(23";
int strUpper = 0;
int strLower = 0;
int strOther = 0;
for( int i = 0; i < s.length(); i++){
if( Character.isUpperCase( s.charAt(i) ) == true)
strUpper++;
else if( Character.isLowerCase( s.charAt(i) ) == true)
strLower++;
else
strOther++;
}
System.out.println( "字符串总长度:" +s.length() );
System.out.println( "大写英文字母总个数:" +strUpper );
System.out.println( "小写英文字母总个数:" +strLower);
System.out.println( "非英文字母总个数:" +strOther);
}
}
public static void main(String []args){
String s = "2334badDDFDc%$(23";
int strUpper = 0;
int strLower = 0;
int strOther = 0;
for( int i = 0; i < s.length(); i++){
if( Character.isUpperCase( s.charAt(i) ) == true)
strUpper++;
else if( Character.isLowerCase( s.charAt(i) ) == true)
strLower++;
else
strOther++;
}
System.out.println( "字符串总长度:" +s.length() );
System.out.println( "大写英文字母总个数:" +strUpper );
System.out.println( "小写英文字母总个数:" +strLower);
System.out.println( "非英文字母总个数:" +strOther);
}
}
然而,用String类的replaceAll方法也可以实现这一目标,而且程序看起来更为简单:
public class Count{
public static void main(String []args){
String str = "asdSFfsS#!@#DFa223sdD$Fsf";
String str_Upper = "";
String str_Lower = "";
String str_Other = "";
str_Upper = str.replaceAll( "[^A-Z]","" );
str_Lower = str.replaceAll( "[^a-z]","" );
str_Other = str.replaceAll( "[a-zA-Z]","" );
System.out.println( "字符串总长度:"+str.length() );
System.out.println( "大写英文字母总个数:"+str_Upper.length() );
System.out.println( "小写英文字母总个数:"+str_Lower.length() );
System.out.println( "非英文字母总个数:"+str_Other.length() );
public static void main(String []args){
String str = "asdSFfsS#!@#DFa223sdD$Fsf";
String str_Upper = "";
String str_Lower = "";
String str_Other = "";
str_Upper = str.replaceAll( "[^A-Z]","" );
str_Lower = str.replaceAll( "[^a-z]","" );
str_Other = str.replaceAll( "[a-zA-Z]","" );
System.out.println( "字符串总长度:"+str.length() );
System.out.println( "大写英文字母总个数:"+str_Upper.length() );
System.out.println( "小写英文字母总个数:"+str_Lower.length() );
System.out.println( "非英文字母总个数:"+str_Other.length() );
}
}