第四章 Java核心类库 第二节 常用Java类库

  • 1. Math类与常用数学方法

    首先,我们来看一下Math类。

    • Math类简介Math类提供了一组用于数学运算的静态方法,包括求绝对值、取整、平方根、幂运算等常见操作。这些方法都是静态的,意味着我们可以直接通过类名调用它们。

    • 常用方法

      • abs():返回绝对值。

      • ceil()floor():分别返回向上取整和向下取整的值。

      • sqrt():返回平方根。

      • pow():计算幂次方。

      例如:

      double x = -5.5;
      System.out.println(Math.abs(x)); // 输出 5.5
      ​
      double y = 2.3;
      System.out.println(Math.ceil(y)); // 输出 3.0
      System.out.println(Math.floor(y)); // 输出 2.0
      ​
      double z = 9.0;
      System.out.println(Math.sqrt(z)); // 输出 3.0
      ​
      System.out.println(Math.pow(2, 3)); // 输出 8.0

      这些方法能够帮助我们处理各种数学计算需求。


    2. Random类与随机数生成

    接下来,我们来看一下Random类。

    • Random类简介Random类用于生成随机数,可以生成整数、浮点数、布尔值等多种类型的随机值。通过实例化Random对象,我们可以调用其中的各种方法来生成随机数。

    • 使用示例

      Random random = new Random();
      ​
      int randomInt = random.nextInt(100); // 生成0到99之间的随机整数
      System.out.println("Random Integer: " + randomInt);
      ​
      double randomDouble = random.nextDouble(); // 生成0.0到1.0之间的随机浮点数
      System.out.println("Random Double: " + randomDouble);
      ​
      boolean randomBoolean = random.nextBoolean(); // 生成随机布尔值
      System.out.println("Random Boolean: " + randomBoolean);

      Random类可以生成多种类型的随机数,广泛应用于游戏开发、数据模拟等场景。


    3. Date与Calendar类的日期操作

    接下来,我们讨论DateCalendar类。

    • Date类简介Date类用于表示特定的时间点,但是由于设计上的局限性,它的功能比较有限,尤其是在国际化支持上。因此,Java推荐使用Calendar类或Java 8引入的日期时间API。

    • Calendar类简介Calendar类提供了更加丰富的日期操作功能,可以处理各种日历字段,如年、月、日、小时等。通过Calendar类,我们可以轻松地获取和设置日期时间信息。

      例如:

      Calendar calendar = Calendar.getInstance();
      ​
      int year = calendar.get(Calendar.YEAR);
      int month = calendar.get(Calendar.MONTH) + 1; // 月份从0开始,需要加1
      int day = calendar.get(Calendar.DAY_OF_MONTH);
      ​
      System.out.println("Current Date: " + year + "-" + month + "-" + day);

      Calendar类适用于复杂的日期计算和调整操作。


    4. Java 8中的日期与时间API

    最后,我们来看看Java 8引入的全新日期与时间API。

    • 新API简介:Java 8中引入了java.time包,提供了更加强大和灵活的日期与时间处理类,如LocalDateLocalTimeLocalDateTimeZonedDateTime等。这些类解决了DateCalendar类的许多问题,例如不可变性和线程安全性。

    • 使用示例

      LocalDate date = LocalDate.now();
      System.out.println("Current Date: " + date);
      ​
      LocalTime time = LocalTime.now();
      System.out.println("Current Time: " + time);
      ​
      LocalDateTime dateTime = LocalDateTime.now();
      System.out.println("Current Date and Time: " + dateTime);
      ​
      LocalDate specificDate = LocalDate.of(2023, 8, 29);
      System.out.println("Specific Date: " + specificDate);

      新的API更加直观和易用,推荐在新项目中使用。

  • 11
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

爱掉发的小龙

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

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

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

打赏作者

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

抵扣说明:

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

余额充值