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

Java中的日期和时间函数使用指南。

发布时间:2023-06-07 09:46:19

Java中提供了一系列日期和时间函数,方便程序开发者操作和处理时间。在这篇文章中,我们将针对Java中常用的日期和时间函数进行详细介绍。

1. Date类

Date类是Java中最基础的日期和时间类,它提供了能够获取和设置日期和时间的方法。它包含两个构造函数:无参构造和带long型参数的构造函数。无参构造函数获取当前日期和时间,带long型参数的构造函数可以指定一个日期和时间。

获取Date对象:

Date date = new Date();

将long型时间转换为Date对象:

long time = System.currentTimeMillis();
Date date = new Date(time);

2. Calendar类

Calendar类是一个抽象类,提供了操作日期和时间的方法。它通过getInstance()方法创建一个Calendar对象,并将其初始化为当前日期和时间。

获取当前日期和时间:

Calendar calendar = Calendar.getInstance();

获取指定时间的Calendar对象:

Date date = new Date();
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);

Calendar类中还提供了许多操作日期和时间的方法,例如add(),roll()和get()等。

add()方法用于添加指定的时间量到Calendar对象中。例如,要将当前日期和时间加上10天,可以使用以下代码:

Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, 10);

roll()方法只会修改Calendar对象中指定字段的值,而不会修改其他字段的值。例如,以下代码只会将月份加上1,而不会修改年份:

Calendar calendar = Calendar.getInstance();
calendar.roll(Calendar.MONTH, 1);

get()方法用于获取指定字段的值。例如,以下代码可以获取当前日期和时间的月份:

Calendar calendar = Calendar.getInstance();
int month = calendar.get(Calendar.MONTH);

注意:其中月份的取值为0-11,表示1月到12月。

3. SimpleDateFormat类

SimpleDateFormat类是一个用于格式化日期和时间的类。它可以将日期和时间以指定的格式转换为字符串,也可以将字符串转换为日期和时间。

将日期和时间转换为字符串:

Date date = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String strDate = formatter.format(date);

将字符串转换为日期和时间:

String strDate = "2021-10-23 16:30:00";
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = formatter.parse(strDate);

注意:在使用SimpleDateFormat类时,需要指定合适的格式化串。

4. Instant类

Instant类是Java 8中新增的日期和时间类。它可以获取UTC时间,并且提供了与时区无关的操作方法。

获取当前时间:

Instant instant = Instant.now();

将时间戳转换为Instant对象:

long timestamp = 1578599420000L;
Instant instant = Instant.ofEpochMilli(timestamp);

5. LocalDateTime类

LocalDateTime类表示本地日期和时间。它没有时区信息,可以提供与时区无关的日期和时间操作方法。它是Java 8中新增的日期和时间类。

获取当前日期和时间:

LocalDateTime localDateTime = LocalDateTime.now();

将LocalDateTime对象转换为字符串:

LocalDateTime localDateTime = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String strDateTime = localDateTime.format(formatter);

将字符串转换为LocalDateTime对象:

String strDateTime = "2021-10-23 16:30:00";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime localDateTime = LocalDateTime.parse(strDateTime, formatter);

以上就是Java中常用的日期和时间函数的使用指南。通过使用这些函数,我们可以轻松地处理和操作日期和时间。