前言
我们在进行数值计算的时候,通常情况下,使用的是基本数据类型,比如byte、int、long和double等等。
int i = 5000;
float gpa = 13.65;
double mask = 0xaf;
然而,在实际开发过程中,我们经常使用对象类型来替代基本数据类型。为了实现这一目标,Java提供了包装类(Wrapper Class)。
Number类及其子类
所有的包装类都是Number抽象类的子类,这些包装类有:Interger、Long、Byte、Double、Float和Short。
包装类的对象包含或包装了其基本数据类型。将基本数据类型转换成对象的过程称为装箱(boxing),这是由编译器完成。因此,在使用包装类的时候我们只需要将基本数据类型的数值传给包装类的构造函数。将包装类转换回基本数据类型的过程叫拆箱(unboxing)。Number类位于java.lang包下。
程序实例
下面是一个装箱和拆箱的代码示例。
public class Test {
public static void main(String args[]) {
Integer x = 5; // 将int类型装箱为Integer类型
x = x + 10; // 将Integer类型拆箱为int类型
System.out.println(x);
}
}
程序输出为:
15
上面的程序代码中,x被赋值了整型,编译器会进行装箱是因为x是声明为Integer类型的对象。之后,x被拆箱,那样就可以进行数值加法计算了。
Number类的方法
下面列出了Number类的子类中继承并实现的方法:
序号 | 方法名 & 描述 |
---|---|
1 | xxxValue()将数值对象转换为xxx数据类型并进行返回,例如intValue()将返回其对应的int数值。 |
2 | compareTo()将数值和参数进行比较。 |
3 | equals()判断和参数是否相等。 |
4 | valueOf()返回整型对应的原始数据类型的数值。 |
5 | toString()返回数值对应的字符串 |
6 | parseInt()将String类型的数字转换为int整型。 |
7 | abs()返回参数的绝对值。 |
8 | ceil()向上取整,返回与参数相等或大于参数的最小整数。返回的是double类型。 |
9 | floor()向下取整,返回与参数相等或小于参数的最大整数,返回的是double类型。 |
10 | rint()返回最接近参数的整数值。 |
11 | round()返回四舍五入的值。 |
12 | min()返回两个参数中最小的那个参数值。 |
13 | max()返回两个参数中最大的那个参数值。 |
14 | exp()返回自然底数e的参数次方。 |
15 | log()返回以自然底数e为底数log参数的计算结果 |
16 | pow()求次方的方法,对参数1计算其参数2次方,例如pow(a,3)即为求a的3次方。 |
17 | sqrt()对参数计算开根号后的值。 |
18 | sin()计算参数的sin值。 |
19 | cos()计算参数的cos值。 |
20 | tan()计算参数的tan值。 |
21 | asin()计算参数的arcsin值。 |
22 | acos()计算参数的arccos值。 |
23 | atan()计算参数的arctan值。 |
24 | atan2()将直角座标(x,y)转换为极座标(r,theta),并返回theta值。 |
25 | toDegrees()将参数转换为度。 |
26 | toRadians()将参数转换为弧度。 |
27 | random()返回一个随机数。 |
关注公众号「小白轻松学编程」
更多交流,欢迎微信搜索并关注公众号「 小白轻松学编程 」!
博客里所有教程会第一时间在公众号上更新哟,扫码关注一下吧~