首页 > 编程语言 >第四章 Java核心类库 第二节 常用Java类库

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

时间:2024-08-29 20:52:07浏览次数:14  
标签:类库 Java Random System println 第二节 Calendar Math out

  • 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更加直观和易用,推荐在新项目中使用。

标签:类库,Java,Random,System,println,第二节,Calendar,Math,out
From: https://blog.csdn.net/lxl12138/article/details/141688211

相关文章

  • 全栈程序员 | 精通安卓、鸿蒙,小程序,Java、Vue.js、SpringBoot及更多技术
    我是一个全栈程序员,擅长多种开发技术,包括安卓开发、Java编程、Vue.js、SpringBoot以及小程序开发等。我在技术上有广泛的涉猎,并致力于将创新解决方案应用于实际项目中。无论是开发高性能的安卓应用,还是构建响应式网页、实现复杂的后端功能,我都能提供专业的技术支持和高质量的代......
  • java中的enum-java中特殊的class;通过字节码来分析enum构成
    §1 先思考一个问题先思考一个问题:我们在enum类里,可以直接使用 values() 或 valueOf(Stringname) 方法,我们也没有在enum类里定义这两个方法,怎么就能直接使用呢? 这里先按下不表。下面是正文。§2enum类及其编译后的字节码在java编程中,我们经常会定义和使用枚举。简......
  • 计算机毕业设计选题推荐-在线音乐网站-音乐专辑商城-Java/Python项目实战
    ✨作者主页:IT研究室✨个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。☑文末获取源码☑精彩专栏推荐⬇⬇⬇Java项目Python项目安卓项目微信小程序项目......
  • 计算机毕业设计选题推荐-中药材进存销管理系统-Java/Python项目实战
    ✨作者主页:IT研究室✨个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。☑文末获取源码☑精彩专栏推荐⬇⬇⬇Java项目Python项目安卓项目微信小程序项目......
  • Java——Stream 流的使用详解
    Stream 是一个可以用于操作集合、数组等数据源的API,主要进行数据的转换、筛选、聚合等操作这样做可以避免显式地使用迭代器或者循环来操作集合,提高代码的可读性和简洁性特点: 1、无存储性:是基于数据源的对象,本身不存储元素,而是通过管道将数据源元素传递给操作2......
  • Java中super关键字的学习
    super关键字目录super关键字1.访问父类的成员变量2.调用父类的方法3.调用父类的构造方法4.在实现接口的类中调用接口的默认方法注意事项在Java中,super是一个关键字,它主要用于在子类中引用父类的成员(包括字段、方法和构造方法),或者用于解决子类和父类之间的命名冲突。以下是s......
  • java毕业设计-基于springboot+vue的高校自习室预约系统设计和实现,基于springboot+vue
    文章目录前言演示视频项目架构和内容获取(文末获取)项目相关文件系统功能部分实现截图架构设计MVC的设计模式基于B/S的架构技术栈具体功能模块设计系统需求分析可行性分析系统测试为什么我?关于我我自己的网站项目开发案例前言博主介绍:✌️码农一枚,专注于大学生项目......
  • Java面试题--1基础篇-03 __八股文 备战春招,秋招
    八、泛型Java中的泛型是什么?泛型是JDK1.5的一个新特性,**泛型就是将类型参数化,其在编译时才确定具体的参数。**这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。使用泛型的好处是什么?远在JDK1.4版本的时候,那时候是没有泛型的概......
  • Java面试题--2集合篇-01 __八股文 备战春招,秋招
    1.常见的集合有哪些?Java集合类主要由两个根接口Collection和Map派生出来的,Collection派生出了三个子接口:List、Set、Queue(Java5新增的队列),因此Java集合大致也可分成List、Set、Queue、Map四种接口体系。注意:Collection是一个接口,Collections是一个工具类,Map不是Collectio......
  • Java算法之Gnome 排序
    简介Gnome排序,又称为双向插入排序或鸡尾酒排序,是一种改进的插入排序算法。它在每次迭代中不仅将最小的元素移动到前面,同时也将最大的元素移动到后面。这种排序算法在每次迭代中同时向两个方向进行移动,因此得名。算法步骤从数组的两端开始,向中间进行扫描。如果左侧元素大于......