欢迎访问宙启技术站
智能推送

Java中常用的日期函数有哪些?

发布时间:2023-05-23 18:29:56

Java中常用的日期函数有很多,这些函数能够帮助我们轻松地处理日期格式、计算日期差、解析字符串为日期对象等。下面就具体介绍一下Java中常用的日期函数。

1. Date类

Date类是Java中最早的日期类,它可以表示日期和时间,一般用于获取当前时间、打印日志等简单应用。

使用Date类可以获取当前时间,示例如下:

Date date = new Date();
System.out.println(date);

输出结果为: Wed Feb 03 13:54:21 CST 2021

2. SimpleDateFormat类

SimpleDateFormat类是Java中最常用的日期格式化类,它可以将日期转换成指定格式的字符串,或者将字符串解析为日期对象。

使用SimpleDateFormat类可以将日期格式化为指定格式的字符串,示例如下:

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

输出结果为:2021-02-03 13:54:21

使用SimpleDateFormat类可以将字符串解析为日期对象,示例如下:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String strDate = "2021-02-03";
Date date = sdf.parse(strDate);
System.out.println(date);

输出结果为:Wed Feb 03 00:00:00 CST 2021

3. Calendar类

Calendar类是Java中最常用的日期类之一,它提供了很多有用的日期操作和计算方法,比如计算两个日期之间的天数、获取指定日期的年、月、日等信息。

使用Calendar类可以获取当前时间,示例如下:

Calendar calendar = Calendar.getInstance();
System.out.println(calendar.getTime());

输出结果为:Wed Feb 03 14:17:03 CST 2021

使用Calendar类可以计算两个日期之间的天数,示例如下:

Calendar calendar1 = Calendar.getInstance();
calendar1.set(2020, 0, 1);
Calendar calendar2 = Calendar.getInstance();
calendar2.set(2020, 2, 1);
long time1 = calendar1.getTimeInMillis();
long time2 = calendar2.getTimeInMillis();
long betweenDays = (time2 - time1) / (1000 * 3600 * 24);
System.out.println(betweenDays);

输出结果为:60

4. LocalDateTime类

LocalDateTime类是Java8中新增的日期类,用于替换旧的Date类和Calendar类,它提供了更灵活和更简单的日期处理方式,可以轻松地实现日期加减、日期格式化等操作。

使用LocalDateTime类获取当前时间,示例如下:

LocalDateTime today = LocalDateTime.now();
System.out.println(today);

输出结果为:2021-02-03T14:28:02.728

使用LocalDateTime类实现日期加减,示例如下:

LocalDateTime today = LocalDateTime.now();
LocalDateTime tomorrow = today.plusDays(1);
System.out.println(tomorrow);

输出结果为:2021-02-04T14:28:02.728

5. Duration类和Period类

Duration类和Period类是Java8中新增的日期类,用于计算时间间隔和日期间隔。

使用Duration类计算时间间隔,示例如下:

LocalDateTime startTime = LocalDateTime.of(2021, 2, 2, 9, 0);
LocalDateTime endTime = LocalDateTime.of(2021, 2, 2, 11, 0);
Duration duration = Duration.between(startTime, endTime);
long minutes = duration.toMinutes();
System.out.println(minutes);

输出结果为:120

使用Period类计算日期间隔,示例如下:

LocalDate startDate = LocalDate.of(2020, 1, 1);
LocalDate endDate = LocalDate.of(2021, 2, 3);
Period period = Period.between(startDate, endDate);
int days = period.getDays();
System.out.println(days);

输出结果为:3

总结

以上就是Java中常用的日期函数,从中可以看出,Java提供了很多日期处理的类和方法,每个类都提供了不同的功能,支持不同的日期处理需求。在实际开发中,我们可以根据具体的需求来选择合适的日期处理类和方法。