Java中的Character类是字符数据类型char的包装类,Character类的对象包含类型为char的单个字段,这样的话就能够将基本数据类型当对象来处理,以下是Character类的方法详解:
01 属性
- MIN_RADIX:返回最小基数
- MAX_RADIX:返回最大基数
- MIN_VALUE:字符类型最小值
- MAX_VALUE:字符类型最大值
示例:
/* 属性 */
Object ob1 = null;
Object ob2 = null;
Object ob3= null;
Object ob4 = null;
// 返回最小基数 MIN_RADIX
ob1 = Character.MIN_RADIX;
System.out.println("Character.MIN_RADIX: " + ob1); //2
// 返回最大基数 MAX_RADIX
ob2 = Character.MAX_RADIX;
System.out.println("Character.MAX_RADIX: " + ob2); //36
// 字符类型最小值 MIN_VALUE
ob3 = Character.MIN_VALUE;
System.out.println("Character.MIN_VALUE: " + ob3); //'\u0000'
// 字符类型最大值 MAX_VALUE
ob4 = Character.MAX_VALUE;
System.out.println("Character.MAX_VALUE: " + ob4); //'\uFFFF'
02 判断
- isLetter():是否是一个字母
- isDigit():是否是一个数字
- isWhitespace():是否是空白字符
- isUpperCase():是否是大写字母
- isLowerCase():是否是小写字母
- ----> 返回 true 或者 false
示例:
/* 判断 */
// 是否是一个字母 isLetter()
System.out.println("a是否是字母:" + Character.isLetter('a'));
System.out.println("1是否是字母:" + Character.isLetter('1'));
// 是否是一个数字 isDigit()
System.out.println("a是否是数字:" + Character.isDigit('a'));
System.out.println("1是否是数字:" + Character.isDigit('1'));
// 是否是空白字符 isWhitespace()
System.out.println("a是否是空白字符:" + Character.isWhitespace('a'));
System.out.println(" 是否是空白字符:" + Character.isWhitespace(' '));
System.out.println("\\'是否是空白字符:" + Character.isWhitespace('\'')); // \':单引号
System.out.println("\\n是否是空白字符:" + Character.isWhitespace('\n')); // \n:换行
System.out.println("\\t是否是空白字符:" + Character.isWhitespace('\t')); // \t:tab
System.out.println("\\r是否是空白字符:" + Character.isWhitespace('\r')); // \r:tab
System.out.println("\\b是否是空白字符:" + Character.isWhitespace('\b')); // \b:后退键
// 是否是大写字母 isUpperCase()
System.out.println("a是否是大写字母:" + Character.isUpperCase('a'));
System.out.println("A是否是大写字母:" + Character.isUpperCase('A'));
// 是否是小写字母 isLowerCase()
System.out.println("a是否是小写字母:" + Character.isLowerCase('a'));
System.out.println("A是否是小写字母:" + Character.isLowerCase('A'));
03 转换
- toUpperCase():转换大写
- toLowerCase():转换小写
- toString():转换字符串
示例:
/* 转换 */
// 转换大写 toUpperCase()
System.out.println("a转换为大写: " + Character.toUpperCase('a')); //A
System.out.println("A转换为大写: " + Character.toUpperCase('A')); //A
// 转换小写 toLowerCase()
System.out.println("a转换为小写: " + Character.toLowerCase('a')); //a
System.out.println("A转换为小写: " + Character.toLowerCase('A')); //a
// 转换字符串 toString()
int a = 65; // 字符A的ASCII码为65
System.out.println("65转换为字符: " + Character.toString(a)); //A
04 比较
- compareTo()
- equals()
== 、 equals() 和 compareTo()的区别:
==:比较两个对象是否相等,即地址是否相同。若相等,返回true,否则,返回false。 若是同一个new出来的对象,他们的比较后的结果为true,否则比较后结果为false。
equals():
比较两个对象的内容是否相等。
compareTo():
在String 中用于比较两个字符串,返回第一个不同字符的ASCII差值。
示例:
/* 比较 */
// ==
int x = 10;
int y = 10;
int z = 0;
System.out.println(x == y);
// equals()
String s1 = new String("abc");
String s2 = new String("abc");
String s3 = s1;
System.out.println(s1 == s2); // false 地址不同
System.out.println(s1.equals(s2)); // true 内容相同
System.out.println(s1 == s3); // true 同一个对象,地址数值都相同
// compareTo()
String s4 = new String("aaa");
String s5 = new String("cllllll");
System.out.println(s1.compareTo(s2)); // 0 s1:abc s2:abc
System.out.println(s1.compareTo(s4)); // 1 s1:abc s4:aaa 第一个不相等的字符是b a
System.out.println(s1.compareTo(s5)); // -2 s1:abc s5:cllllll 首字母不相等 a c