Java常见的类——Number和Math类
但我们使用数据时,我们一般使用内置数据类型,列如:byte,int,long,double等,但是在实际开发过程中,我们一般遇到的是需要使用对象,这时,我们就可以使用 Java 专门为每一个数据类型提供的对应的包装类,并且所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类。
Java Math类
Java 的 Math 类封装了很多与数学有关的属性和方法并且 Math 的方法都被定义为static 形式,通过 Math 类可以在主函数中直接调用。
Number & Math 类方法
我们主要谈论一些该类常用的方法:
1、xxxValue()
xxxValue() 方法用于将 Number 对象转换为 xxx 数据类型的值并返回。列如:
当类型为 byte 时,byteValue(): 表示以 byte 形式返回指定的数值。
当类型为 abstract double 时候,doubleValue() : 以 double 形式返回指定的数值。以此类推。
但是,这些函数不接受任何的参数。
2、compareTo() 方法
compareTo() 方法用于将 Number 对象与方法的参数进行比较。可用于比较 Byte, Long, Integer等(只能对两个相同类型的进行比较,两个不同类型的数据不能用此方法)。
语法为:public int compareTo( NumberSubClass referenceName )
其中 referenceName 可以为 Byte, Double, Integer, Float, Long 或 Short 类型的任意参数。在指定的数等于参数时返回0、小于参数时返回-1、大于参数时返回1.
3、equals() 方法
equals() 方法用于判断 Number 对象与方法的参数进是否相等。
语法:public boolean equals(Object x)
其中 x 为任意对象,当 Number 对象不为 Null,且与方法的参数类型与数值都相等返回 True,否则返回 False。
4、valueOf() 方法
这是一个可以接收两个参数(一个是字符串,一个是基数)的静态方法,主要用于返回给定参数的原生 Number 对象值,参数可以是原生数据类型, String等。
语法:
static Integer valueOf(int i) (1)
static Integer valueOf(String s) (2)
static Integer valueOf(String s, int radix) (3)
其中 i = Integer 对象的整数,s = Integer 对象的字符串,radix = 在解析字符串,s 时使用的进制数,用于指定使用的进制数。
在案例中,代码(1)返回一个表示指定的 int 值的 Integer 实例。
代码(2)返回保存指定的 String 的值的 Integer 对象。
代码(3)返回一个 Integer 对象,该对象中保存了用第二个参数提供的基数进行解析时从指定的 String 中提取的值。
5、toString() 方法
toString() 方法用于返回以一个字符串表示的 Number 对象值,如果方法使用了原生的数据类型作为参数,返回原生数据类型的 String 对象值,如果方法有两个参数, 返回用第二个参数指定基数表示的第一个参数的字符串表示形式。
6、parseInt() 方法
parseInt() 方法用于将字符串参数作为有符号的十进制整数进行解析、如果方法有两个参数, 使用第二个参数指定的基数,将字符串参数解析为有符号的整数。
语法:
static int parseInt(String s)
static int parseInt(String s, int radix)
其中参数为s = 十进制表示的字符串。radix = 指定的基数。
运行代码:parseInt(String s): 返回用十进制参数表示的整数值。
parseInt(int i): 使用指定基数的字符串参数表示的整数 (基数可以是 10, 2, 8, 或 16 等进制数) 。
7、abs()
abs() 方法返回参数的绝对值。参数可以是 int, float, long, double, short, byte类型。
语法为:
double abs(double d)
float abs(float f)
int abs(int i)
long abs(long lng)
8、ceil() 方法
是一个类型为双精度浮点型的方法,可对一个数进行上舍入,返回值大于或等于给定的参数。返还类型为double类型。
语法:
double ceil(double d)
double ceil(float f)
9、floor() 方法
floor() 方法可对一个数进行下舍入,返回给定参数最大的整数,该整数小于或等给定的参数。返回 double 类型数据,小于或等于给定的参数。
语法:
double floor(double d)
double floor(float f)
10、round() 方法
round 表示"四舍五入",算法为Math.floor(x+0.5) ,即将原来的数字加上 0.5 后再向下取整,所以 Math.round(11.5) 的结果为 12,Math.round(-11.5) 的结果为 -11。
round() 方法返回一个最接近的 int、long 型值,四舍五入。
语法:
long round(double d)
int round(float f)
其中d = double 或 float 的原生数据类型、f = float 原生数据类型。
该类方法大概有27种,这里就不每个介绍了,想了解更多可以去下面这个网址:
https://www.runoob.com/java/java-number.html