在使用java语言进行开发时,我们经常会遇到需要使用对象而不是内置数据类型的情况,那么如何解决这个问题呢?需要使用基本数学运算时又该调用什么类呢?所以今天为大家带来了大数据编程入门:Java Number&Math类这篇文章。
一、
Java Number&Math类
通常,当我们需要使用数字时,我们会使用内置的数据类型,如byte、int、long、double等。
示例:
然而,在实际的开发过程中,我们经常会遇到这样的情况:我们需要使用对象而不是内置的数据类型。为了解决这个问题,Java语言为每个内置数据类型提供了一个包装类。
所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类。
包装类 |
基本数据类型 |
Boolean |
boolean |
Byte |
byte |
Short |
short |
Int |
int |
Long |
long |
Char |
char |
Float |
float |
Double |
double |
编译器特别支持的包装器称为装箱,因此当将内置数据类型用作对象时,编译器会将内置类型装箱为包装类。类似地,编译器可以将对象解压为内置类型。Number类属于Java.lang包。
下面是一个使用 Integer 对象的示例:
运行结果:
当x被指定一个整数值时,编译器将对x进行装箱,因为x是一个对象。然后,为了使x能进行运算,要对x进行拆箱。
二、
Java Math类
Java中的Math包含用于执行基本数学运算的属性和方法,如初等指数、对数、平方根和三角函数。
Math方法被定义为static形式,可以通过Math类在主函数中直接调用。
示例:
运行结果:
三、
Number&Math类方法
下面将列出Number&Math类常用的一些方法:
方法 |
描述 |
xxxValue() |
将Number对象转换为XXX数据类型的值并返回它。 |
compareTo() |
将Number对象与参数进行比较。 |
Equals() |
判断number对象是否与参数相等。 |
valueOf() |
返回由number对象指定的内置数据类型 |
toString() |
以字符串形式返回值。 |
parseInt() |
将字符串解析为int类型。 |
abs() |
返回参数的绝对值。 |
ceil() |
返回大于等于( >= )给定参数的的最小整数,类型为双精度浮点型。 |
floor() |
返回小于等于(<=)给定参数的最大整数 。 |
rint() |
返回与参数最接近的整数。返回类型为double。 |
round() |
它表示四舍五入,算法为 Math.floor(x+0.5),即将原来的数字加上 0.5 后再向下取整,所以,Math.round(11.5) 的结果为12,Math.round(-11.5) 的结果为-11。 |
min() |
返回两个参数中的最小值。 |
max() |
返回两个参数中的最大值。 |
exp() |
返回自然数底数e的参数次方。 |
log() |
返回参数的自然数底数的对数值。 |
pow() |
返回第一个参数的第二个参数次方。 |
sqrt() |
求参数的算术平方根。 |
sin() |
求指定double类型参数的正弦值。 |
cos() |
求指定double类型参数的余弦值。 |
tan() |
求指定double类型参数的正切值。 |
asin() |
求指定double类型参数的反正弦值。 |
acos() |
求指定double类型参数的反余弦值。 |
atan() |
求指定double类型参数的反正切值。 |
atan2() |
将笛卡尔坐标转换为极坐标,并返回极坐标的角度值。 |
toDegrees() |
将参数转化为角度。 |
toRadians() |
将角度转换为弧度。 |
random() |
返回一个随机数。 |
四、
Math 的 floor,round 和 ceil 方法实例比较
参数 |
Math.floor |
Math.round |
Math.ceil |
1.4 |
1 |
1 |
2 |
1.5 |
1 |
2 |
2 |
1.6 |
1 |
2 |
2 |
-1.4 |
-2 |
-1 |
-1 |
-1.5 |
-2 |
-1 |
-1 |
-1.6 |
-2 |
-2 |
-1 |
示例:
运行结果:
这就是大数据编程入门:Java Number&Math类的全部内容了,希望这篇文章能够帮助到大家~