Number类
在使用数字时,我们通常会使用内置数据类型,如
int a = 9;float b = 3.14
然而在实际开发中,我们经常遇到需要使用对象而不是使用内置数据类型的对象。为了解决这一问题,Java为每一个内置数据类型提供了对应的包装类(比如使用该类型所拥有的函数),如下图:
这种由编译器特别支持的包成为装箱,
例子
public classForTest {public static voidmain(String args[]){//char grade = args[0].charAt(0);
Integer x = 5;
x+= 20;
System.out.println(x);
}
}
Integer x = 5,编译器对x进行装箱,x+=20编译器对x进行了拆箱。
Number方法使用举例
public classForTest {public static voidmain(String args[]){//char grade = args[0].charAt(0);
Integer x = 5;
System.out.println(x);
System.out.println("5 compareTo 1:" + x.compareTo(1));
System.out.println("5 compareTo 50:" + x.compareTo(50));
Integer intx= Integer.valueOf("3");
System.out.println("valueOf" +intx);//该对象中保存了用第二个参数提供的基数进行解析时从指定的 String 中提取的值
Integer inty = Integer.valueOf("13", 16);
System.out.println("valueOf" +inty);
System.out.println("Math.max(3,5):" + Math.max(3, 5));
System.out.println("Math.min(3,5):" + Math.min(3, 5));
System.out.println("exp(2):" + Math.exp(2));
System.out.println("log(2):" + Math.log(2));
System.out.println("pow(2,3):" + Math.pow(2, 3));
System.out.println("sqrt(2,3):" + Math.sqrt(4));
System.out.println("toRadians(30):" + Math.toRadians(30));
System.out.println("sin(1):" + Math.sin(Math.toRadians(30)));
System.out.println("random:" +Math.random());
}
}
运行结果
5
5 compareTo 11
5 compareTo 50-1valueOf3
valueOf19
Math.max(3,5):5Math.min(3,5):3exp(2):7.38905609893065log(2):0.6931471805599453pow(2,3):8.0sqrt(2,3):2.0toRadians(30):0.5235987755982988sin(1):0.49999999999999994random:0.10509218688109245
Character类
Character类用于对单个字符进程操作,例如
char ch = 'a';//Unicode 字符表示形式
char uniChar = '\u039A';char[] charArray = {'a', 'b', 'c'};
然而,在实际开发中,经常遇到使用char类型的对象,而不是内置数据类型。编译器把char类型自动转化为Character对象成为“装箱”,反过来成为“拆箱”。Character用法举例
public classCharTest {public static voidmain(String args[]) {char ch = 'a';//Unicode 字符表示形式
char uniChar = '\u039A';char[] charArray = {'a', 'b', 'c'};
Character ch2= 'a';
System.out.println("a是否是一个字母:" +Character.isLetter(ch2));
System.out.println("a是否是一个数字字符:" +Character.isDigit(ch2));
System.out.println("是否是一个空格:" +Character.isWhitespace(ch2));
System.out.println("\\t是否是一个空格:" + Character.isWhitespace('\t'));
System.out.println("a是否是一个大写字母:" +Character.isUpperCase(ch2));
System.out.println("a是否是一个小写字母:" +Character.isLowerCase(ch2));
System.out.println("a转化为大写字母:" +Character.toUpperCase(ch2));
System.out.println("a转化为小写字母:" +Character.toLowerCase(ch2));
System.out.println("a字符转化为字符串:" +Character.toString(ch2));
}
}
运行结果
a是否是一个字母:truea是否是一个数字字符:false是否是一个空格:false\t是否是一个空格:truea是否是一个大写字母:falsea是否是一个小写字母:truea转化为大写字母:A
a转化为小写字母:a
a字符转化为字符串:a