在java中,我们可以调用Character类中定义的方法来确定字符的类别。该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。
Character 类在对象中包装一个基本类型char的值。Character类型的对象包含类型为char的单个字段。
例如:
static boolean isLetter(char ch):判断字符ch是否为字母。
static boolean isLowerCase(char ch):判断字符是否为小写字母。
static boolean isUpperCase(char ch):判断字符是否为大写字母。
isDigit(char ch):确定指定字符是否为数字。
isLetterOrDigit(char ch):判断是否是数字或字母。
如果有需要,可以自行查看API。
例题:已经有字符串”HAKWHKWasdfee234944.[]_#r56”,请编写程序将该字符串中的大写字母、小写字母、数字、其他字符分别放入到四个StringBuffer中,输出这四个StringBuffer对象及其长度。
分析:要把这个字符串的大写字母、小写字母、数字、其他字符分开,可以先调用char charAt(int index)方法遍历整个字符串,再调用Character类中的方法区分字符的类别,示例代码:
public class StringBufferTest
{
public static void main(String args[])
{
StringBuffer str=new StringBuffer("HAKWHKWasdfee234944.[]_#r56");
StringBuffer capital=new StringBuffer("");
StringBuffer lowercase=new StringBuffer("");
StringBuffer number=new StringBuffer("");
StringBuffer other=new StringBuffer("");
for(int i=0;i
{
char c=str.charAt(i);
//if(c>='A'&&c<='Z')
//{
//capital.append(c);
//}
if(Character.isUpperCase(c))
{
capital.append(c);
}
if(Character.isLowerCase(c))
{
lowercase.append(c);
}
if(Character.isDigit(c))
{
number.append(c);
}
if(!Character.isLetterOrDigit(c))
{
other.append(c);
}
}
System.out.println("大写字母="+capital+"长度="+capital.length());
System.out.println("小写字母="+lowercase+"长度="+lowercase.length());
System.out.println(" 数 字="+number+"长度="+number.length());
System.out.println("其他字符="+other+"长度="+other.length());
}
}
运行结果:
(初学者,如有错误,欢迎指正,谢谢)