Java:时间日期类

这篇具有很好参考价值的文章主要介绍了Java:时间日期类。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Date

同样位于java.util包下。

在java中,获取时间最简单的方式就是直接实例化Date类。

以自定义格式,取当前的时间日期:

Date date = new Date();
SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd :hh:mm:ss");
System.out.println(dateFormat.format(date));

之前可以用Date类来获取当前日期和时间的结构信息,比如说:

Date date = new Date();
System.out.println(date.toLocaleString());
System.out.println(date.getDay());  // 当前星期几
System.out.println(date.getYear());  // 自从1900之后,经过了多少年
System.out.println(date.getMonth());  //当年第几个月,从0开始
System.out.println(date.getDate());  // 当前日
System.out.println(date.getSeconds());  // 当前秒
System.out.println(date.getMinutes());  // 当前分钟
System.out.println(date.getHours());  // 当前小时

不过以上API都是属于废弃API,看描述是从1.1开始就废弃掉了可能。

Calendar

Calendar类位于java.util包下,是Java7里比较新的一种获取时间的方式。

是专门用来转换特定时刻和日历字段之间的日期和时间。

之前比较常用的如new Date().getHours()等,已经属于废弃方法了,官方在文档里明确推荐使用Calendar类来代为替换。

分别取年月日时分秒:

Calendar cal=Calendar.getInstance();      
int y=cal.get(Calendar.YEAR);      
int m=cal.get(Calendar.MONTH);      
int d=cal.get(Calendar.DATE);      
int h=cal.get(Calendar.HOUR_OF_DAY);      
int mi=cal.get(Calendar.MINUTE);      
int s=cal.get(Calendar.SECOND);      
System.out.println("现在时刻是"+y+"年"+m+"月"+d+"日"+h+"时"+mi+"分"+s+"秒");

以自定义格式,取当前的时间日期:

Calendar calendar= Calendar.getInstance();
SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd :hh:mm:ss");
System.out.println(dateFormat.format(calendar.getTime()));

或者直接sout下面的:

new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(Calendar.getInstance().getTime())	

注意,format里面的hh是12小时制,如果想看24小时制,那用HH

Date/Time API

Java8提供了一个全新的API,用来替换Java.util.DateJava.util.Calendar

其提供了多个类,方便我们操作时间,包括:

  • LocalDate
  • LocalTime
  • LocalDateTime
  • ZonedDateTime

LocalDate

位于java.time包下。

只显示日期,不显示时间,可以使用format来控制格式。

打印当前日期:

LocalDate date = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
System.out.println(formatter.format(date));		// 2023-01-16

LocalTime

同样位于java.time包下。

与LocalDate相反,LocalTime只能获取时间,而不能获取日期。

打印当前时间:

LocalTime time = LocalTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss");
System.out.println(formatter.format(time));		// 15:42:19

LocalDateTime

同时获取日期和时间,使用方式基本一致。

打印当前的日期和时间:

LocalDateTime dt = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
System.out.println(formatter.format(dt));	// 2023-01-16 15:46:48

ZonedDateTime

获取时间和日期的结构化字段

ZonedDateTime ZonedDateTime = ZonedDateTime.now();创建之后,可以通过以下方法访问实例的日期和时间字段:

Java:时间日期类

日期和时间的计算方法:

Java:时间日期类

功能

获取标准时间

可以通过System.currentTimeMillis() 来获取标准时间的时间戳,据说这个值是不受时区影响的纯净值。暂时存疑,因为这里我没验证过。

如:1673861700672

也可以把时间戳转换成我们可以理解的正常形式,但是这个过程中系统会自动加上时区:文章来源地址https://www.toymoban.com/news/detail-499416.html

SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date(System.currentTimeMillis());
System.out.println(formatter.format(date));

参考文献

  1. java 获取当前时间的三种方法
  2. Java如何获取当前日期和时间?
  3. JAVA中获取当前时间的写法
  4. calendar的使用。以及如何获取某月份最后一天的方法

到了这里,关于Java:时间日期类的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • springboot~统一处理日期请求参数java.utils.Date和java.time.LocalDate

    日期类型的参数在从前端通过url参数传递到后端时,它会被进行格式化,如果格式化失败会出现400的错误,像日期格式默认会使用yyyy/MM/dd的格式,如果希望自己去个性化配置,我们可以通过实现WebMvcConfigurer接口的addFormatters方法来完成。 DateTimeFormatterRegistrar 实例的 setTimeFor

    2024年02月06日
    浏览(33)
  • 在java java.util.Date 已知逝去时间怎么求年月日

    您可以使用java.util.Date对象的getYear()、getMonth()和getDate()方法来获取逝去时间的年、月和日。 示例代码如下: 这里使用的是 getYear() 方法,需要注意此方法已被废弃,应使用 Calendar 类来获取年份。示例中加了1900来转换为实际年份。另外,月份需要加1,因为 getMonth() 方法返回的

    2024年01月15日
    浏览(37)
  • Java:时间日期类

    同样位于java.util包下。 在java中,获取时间最简单的方式就是直接实例化Date类。 以自定义格式,取当前的时间日期: 之前可以用Date类来获取当前日期和时间的结构信息,比如说: 不过以上API都是属于废弃API,看描述是从1.1开始就废弃掉了可能。 Calendar类位于java.util包下,是

    2024年02月10日
    浏览(31)
  • Java日期时间处理详解

    在Java的世界里,处理日期和时间是常见的任务。尤其在Java 8之前, SimpleDateFormat 是处理日期和时间的主要方式。然而,Java 8引入了新的日期时间API,其中 LocalDateTime 和 DateTimeFormatter 成为了新的选择。本文将探讨这三者的区别,利弊以及它们的具体使用方法。 SimpleDateFormat 是

    2024年02月02日
    浏览(37)
  • Java 时间和日期类

    一、Calender类         1.构造方法         Calendar类是一个抽象类,不能通过new+构造方法的方式创建对象,构造方法 protected  Calendar()  ;protected  Calendar(TimeZone zone, Locale aLocale) ,构造方法是protected修饰的,其他的非子类中不能通过new+构造方法的方式创建对象,但他提供

    2024年02月10日
    浏览(25)
  • Java 日期和时间 API:实用技巧与示例 - 轻松处理日期和时间

    Scanner 类用于获取用户输入,它位于 java.util 包中。 要使用 Scanner 类,请执行以下步骤: 导入 java.util.Scanner 包。 创建一个 Scanner 对象,并将其初始化为 System.in 。 使用 Scanner 对象的方法读取用户输入。 Scanner 类提供了各种方法来读取不同类型的数据: 方法 描述 nextBoolean()

    2024年03月09日
    浏览(88)
  • java判断当前日期时间大于指定日期时间 记录日常开发中的小搜索

    可以使用Java中的 Calendar 类来获取当前时间和所需的指定时间并将它们进行比较。这是一个示例代码: 在上面的示例中,我们首先使用 Calendar.getInstance() 方法获取当前时间和指定时间的 Calendar 对象。然后,我们将指定时间设置为2022年1月1日下午3:30,并使用 after() 方法比较当

    2024年02月07日
    浏览(45)
  • java获取两个日期之间的所有日期

      1、获取日期的过程: 首先创建一个数组,然后在数组的末尾加上一个日期。当我们有两个日期时,可以把这两个日期当做是不同的数组,然后使用 next函数把这两个日期之间的所有时间都获取出来。 2、代码演示: 3、实现效果: 在 java中,获取一个数字的时候,需要把这

    2024年02月04日
    浏览(35)
  • Java计算时间差、日期差

    在java中,计算时间差或日期差有多种方法,以下提供五种示例: 目录 一、使用 Instant 和 Duration 类计算时间差 二、使用 LocalDate 和 ChronoUnit 类计算日期差 三、使用 Joda-Time 库计算时间差和日期差 四、使用 Instant 和 Period 类计算日期差 五、使用 Java 8 的 java.time.tempo

    2024年02月14日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包