返回

包装类的神奇力量:深入解析 Math、Arrays、System 类

后端

包装类

包装类是 Java 中的基本数据类型的一个扩展,它允许将基本数据类型存储在对象中。包装类提供了比基本数据类型更丰富的方法和属性,例如:

  • 它们可以存储 null 值。
  • 它们可以作为参数传递给方法。
  • 它们可以存储在集合中。

包装类与基本数据类型之间的转换是自动进行的,称为自动装箱和拆箱。自动装箱是指将基本数据类型转换为包装类对象,拆箱是指将包装类对象转换为基本数据类型。

Math 类

Math 类提供了数学函数,例如:

  • 三角函数(如 sin()、cos()、tan())
  • 指数和对数函数(如 exp()、log()、log10())
  • 绝对值函数(如 abs())
  • 最大值和最小值函数(如 max()、min())
  • 随机数生成函数(如 random())

Math 类中的方法都是静态的,这意味着它们可以直接使用,而无需创建 Math 类的实例。

Arrays 类

Arrays 类提供了数组操作的方法,例如:

  • 排序数组(如 sort())
  • 搜索数组(如 binarySearch())
  • 复制数组(如 copyOf())
  • 比较数组(如 equals())

Arrays 类中的方法都是静态的,这意味着它们可以直接使用,而无需创建 Arrays 类的实例。

System 类

System 类提供了系统相关的操作,例如:

  • 获取当前时间(如 currentTimeMillis())
  • 获取系统属性(如 getProperties())
  • 打印信息到控制台(如 out.println())

System 类中的方法都是静态的,这意味着它们可以直接使用,而无需创建 System 类的实例。

示例

以下示例演示如何使用包装类、Math 类、Arrays 类和 System 类:

public class Main {

    public static void main(String[] args) {

        // 包装类
        Integer i = 10;
        Double d = 10.0;

        // 自动装箱和拆箱
        int j = i;
        double e = d;

        // Math 类
        double x = Math.sin(Math.PI / 2);
        double y = Math.log(10);

        // Arrays 类
        int[] numbers = {1, 2, 3, 4, 5};
        Arrays.sort(numbers);
        int index = Arrays.binarySearch(numbers, 3);

        // System 类
        long currentTimeMillis = System.currentTimeMillis();
        System.out.println("Current time: " + currentTimeMillis);

    }

}

输出:

Current time: 1647653393575

结论

包装类、Math 类、Arrays 类和 System 类是 Java 中非常有用的类。它们提供了许多有用的方法,可以帮助我们编写更简洁、更强大的代码。