一篇文章带你搞懂Java Number & Math类的常用方法以及关系—Java菜鸟教程

Java Number & Math 类

一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double 等。然而在实际开发中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题,Java 语言为每一个内置数据类型提供了对应的包装类。

Java 中的 Number 类是一个抽象类,它是所有表示数值类型的基类。

Number 类的子类包括 Integer、Double、Long、Byte 等,它们分别表示不同的数值类型。

包装类基本数据类型
Booleanboolean
Bytebyte
Shortshort
Integerint
Longlong
Characterchar
Floatfloat
Doubledouble

Java Number类

并且提供了将这些数值类型转换为其他数据类型的方法,如 intValue()、doubleValue()、longValue() 等。

​ 这种由编译器特别支持的包装称为**装箱,所以当内置数据类型被当作对象使用的时候,编译器会把内置类型装箱为包装类**。相似的,编译器也可以把一个对象**拆箱内置类型**。


Java Math 类

​ Java 的 Math 包含了用于执行基本数学运算的属性和方法,如初等指数、对数、平方根和三角函数。Math 类是一个工具类,提供了各种数学运算的静态方法。Math 类中的方法可以用来执行常见的数学计算,如绝对值(abs)、幂运算(pow)、取整(ceil、floor、round)、三角函数(sin、cos、tan 等)以及对数、指数、最大值(max)、最小值(min)等。Math 类还提供了一些常见的数学常量,如π(圆周率)和 e(自然对数的底数)。

Math 的方法都被定义为 static 形式,通过 Math 类可以在主函数中直接调用。

以下是 Number 类和 Math 类的一些常用方法示例:
Number 类方法示例:
Integer num = new Integer(10);
int intValue = num.intValue(); // 将 Integer 转换为 int 类型
double doubleValue = num.doubleValue(); // 将 Integer 转换为 double 类型

Double num2 = new Double(3.14);
int intValue2 = num2.intValue(); // 将 Double 转换为 int 类型
Math 类方法示例:
double absValue = Math.abs(-5.6); // 求绝对值
double powValue = Math.pow(2, 3); // 求幂运算,2 的 3 次方
double ceilValue = Math.ceil(4.2); // 向上取整
double floorValue = Math.floor(4.8); // 向下取整 
double roundValue = Math.round(5.6); // 四舍五入取整,先+0.5再向下取整

double sinValue = Math.sin(Math.PI / 2); // 正弦函数,参数为弧度制
double cosValue = Math.cos(Math.PI); // 余弦函数,参数为弧度制
double tanValue = Math.tan(Math.PI / 4); // 正切函数,参数为弧度制

double maxValue = Math.max(5, 8); // 求最大值
double minValue = Math.min(3, 7); // 求最小值

在这里插入图片描述
在这里插入图片描述

Math 的 floor,round 和 ceil 方法实例比较

参数Math.floorMath.roundMath.ceil
1.4112
1.5122
1.6122
-1.4-2-1-1
-1.5-2-1-1
-1.6-2-2-1

结尾语:记录于2023年7月20号22时01分,以上仅为个人在Java Number&Math类的学习过程中遇到的问题,还有记录的个人想法,有错误欢迎指出,感谢!

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Stevedash

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值