java之Math

一、Math类
java.lang.Math提供了一系列静态方法用于科学计算;其方法的参数和返回值类型一般为double型。
abs     绝对值
acos,asin,atan,cos,sin,tan  三角函数
sqrt     平方根
pow(double a,doble b)     a的b次幂
log    自然对数
exp    e为底指数
max(double a,double b)
min(double a,double b)
random()      返回0.0到1.0的随机数
long round(double a)     double型数据a转换为long型(四舍五入)
toDegrees(double angrad)     弧度—>角度
toRadians(double angdeg)     角度—>弧度

二、BigInteger类
Integer类作为int的包装类,能存储的最大整型值为2^31-1,BigInteger类的数值范围较Integer类的数字
范围要大得多,可以支持任意精度的整数。
①构造器
BigInteger(String val)
常用方法
public BigInteger abs()
public BigInteger add(BigInteger val)
public BigInteger subtract(BigInteger val)
public BigInteger multiply(BigInteger val)
public BigInteger divide(BigInteger val)
public BigInteger remainder(BigInteger val)
public BigInteger pow(int exponent)
public BigInteger[] divdeAndRemainder(BigInteger val)

三、BigDecimal类
一般的Float类和Double类可以用来做科学计算或工程计算,但在商业计算中,要求数字精度比较高,故用到java.math.BigDecimal类。BigDecimal类支持任何精度的定点数。
构造器
public BigDecimal(double val)
public BigDecimal(String val)
常用方法
public BigDecimal add(BigDecimal augend)
public BigDecimal subtract(BigDecimal subtrahend)
public BigDecimal multiply(BigDecimal multiplicand)
public BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)

### 如何在Java中导入并使用Math类 在Java中,`Math` 类是一个内置的工具类,提供了许多用于执行基本数学运算的方法。要使用 `Math` 类中的方法或常量(如 `PI` 或 `E`),可以通过两种方式实现:直接调用静态成员或者显式导入。 #### 方法一:无需导入即可访问 由于 `Math` 是标准库的一部分,默认情况下可以直接通过全限定名称来访问它的静态方法和字段。例如: ```java double result = Math.sqrt(16); System.out.println("Square root of 16 is: " + result); double piValue = Math.PI; System.out.println("The value of PI is: " + piValue); ``` 上述代码展示了如何不借助额外的导入语句而直接利用 `Math` 的功能[^2]。 #### 方法二:通过import简化命名空间 为了减少冗长的书写工作,可以采用 `import` 关键字将整个 `Math` 类引入当前源文件的作用域内。这样做的好处是可以省去每次调用时都需要写出完整的包路径的需求。具体做法如下所示: ```java import java.lang.Math; public class Main { public static void main(String[] args) { double sqrtResult = Math.sqrt(9); // 使用sqrt函数计算平方根 System.out.println(sqrtResult); double expResult = Math.exp(1); // 计算自然指数e的一次方 System.out.println(expResult); } } ``` 值得注意的是,在大多数实际应用场合下并不需要单独声明 `import java.lang.*;` ,因为这个包下的所有类都会被自动加载到每一个程序当中。 ### 总结 无论是选择直接引用还是先做一次性的全局导入再局部运用的方式都可以有效地操作来自 `Math` 库里的资源。对于简单的脚本编写来说可能前者更为便捷;而对于大型项目开发则推荐后者以保持良好的编码习惯以及提高可读性和维护效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值