Java Number & Math 类


Java Number & Math 类

Java Number & Math 类是Java中处理数字和数学运算的重要类之一。其中Number类是抽象类,由Integer、Double、Long、Float、Short、BigInteger 和 BigDecimal 继承。Math类则包含了各种数学运算方法,如求最大值、最小值以及各种三角函数。

Number类介绍

在Java中,Number是一个抽象类,继承了Object类。它是用于处理数字数据类型的父类,Java的整数类型(byte、short、int、long)、浮点类型(float、double)、BigInteger、BigDecimal等都是Number的子类。Number类提供了将数字类型从一种类型转换为另一种类型的方法,这些方法返回转换后的类型。例如,将一个Double类型转换为Integer类型可以使用intValue()方法。Number类中提供了在处理Java数字时非常有用的常量,例如MAX_VALUE和MIN_VALUE。

下面是Number类的常用方法:

  1. byteValue() - 将Number对象转换为byte类型。
  2. shortValue() - 将Number对象转换为short类型。
  3. intValue() - 将Number对象转换为int类型。
  4. longValue() - 将Number对象转换为long类型。
  5. floatValue() - 将Number对象转换为float类型。
  6. doubleValue() - 将Number对象转换为double类型。
  7. toString() - 将Number对象转换为String类型。

Math类介绍

Java Math类包含一些实用的常数和方法。这个类不能被实例化。它提供了执行基本数学操作的方法,例如计算平方根、三角函数、指数、对数和最大/最小值等。

下面是Math类的常用静态方法:

  1. abs() - 返回一个数的绝对值。
  2. max() - 返回两个数中的最大值。
  3. min() - 返回两个数中的最小值。
  4. ceil() - 返回大于等于目标数的最小整数。
  5. floor() - 返回小于等于目标数的最大整数。
  6. round() - 返回四舍五入后的整数。
  7. sqrt() - 返回目标数的平方根。
  8. pow() - 返回第一个参数的第二个参数次幂。
  9. random() - 返回一个[0,1)之间的随机数。

下面是Math类的常用静态常数:

  1. E - 自然对数的底数e。
  2. PI - 圆周率π。

Java Number & Math 类的使用

以下是使用Number与Math类的简单例子:

public class NumberAndMathExample {
  public static void main(String[] args) {

    // Number 类的示例
    Integer intObj = new Integer(10);
    Double doubleObj = new Double(2.5);

    System.out.println("转成byte类型:" + intObj.byteValue());
    System.out.println("转成short类型:" + intObj.shortValue());
    System.out.println("转成float类型:" + intObj.floatValue());
    System.out.println("转成double类型:" + intObj.doubleValue());

    // Math类的示例
    double x = 25.0;
    double y = 9.0;

    System.out.println("x和y中的最大值是:" + Math.max(x, y));
    System.out.println("x和y中的最小值是:" + Math.min(x, y));
    System.out.println("x的平方根是:" + Math.sqrt(x));
    System.out.println("y的平方根是:" + Math.sqrt(y));
    System.out.println("4的3次方是:" + Math.pow(4, 3));
    System.out.println("1到99之间的随机数是:" + Math.random());

  }
}

以上代码输出结果:

转成byte类型:10
转成short类型:10
转成float类型:10.0
转成double类型:10.0
x和y中的最大值是:25.0
x和y中的最小值是:9.0
x的平方根是:5.0
y的平方根是:3.0
4的3次方是:64.0
1到99之间的随机数是:0.8151362324383264

总结

Java Number & Math 类是Java中处理数字和数学运算的重要类之一。Number类是抽象类,由Java中各种数字类型继承,它提供了将数字类型从一种类型转换为另一种类型的方法,以及在处理Java数字时非常有用的常量。Math类则包含了各种数学运算方法,如求最大值、最小值以及各种三角函数。这些类在Java中经常被使用,对于开发者而言是非常重要的一个类库。