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

Java中的时间日期函数:获取当前时间、格式化输出、日期计算

发布时间:2023-06-03 23:54:20

Java是一种面向对象的编程语言,它提供了强大的时间日期函数,用于处理和操作日期和时间。在Java中,我们可以通过Date和Calendar类来实现对时间日期的处理和操作。

1. 获取当前时间

Java中获取当前时间有多种方式,我们可以使用Date类或者Calendar类来获取。

a. 使用Date类

Date类是Java中处理日期和时间的基本类,它可以获取当前时间。如下所示:

Date date = new Date();
System.out.println("当前时间是:" + date);

输出的结果为:

当前时间是:Thu Aug 12 13:58:02 CST 2021

b. 使用Calendar类

Calendar类是Java中用于操作日期和时间的类,它提供了获取当前时间的方法。如下所示:

Calendar calendar = Calendar.getInstance();
Date date = calendar.getTime();
System.out.println("当前时间是:" + date);

输出的结果与使用Date类获取的当前时间相同。

2. 格式化输出时间日期

Java中可以使用SimpleDateFormat类将日期格式化为指定的格式。如下所示:

Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = sdf.format(date);
System.out.println("格式化后的时间是:" + time);

输出的结果为:

格式化后的时间是:2021-08-12 14:01:52

其中,SimpleDateFormat中的格式化字符含义如下:

|字符|含义|

|-|-|

|y|年份|

|M|月份|

|d|日|

|H|小时(24小时制)|

|h|小时(12小时制)|

|m|分|

|s|秒|

|S|毫秒|

3. 日期计算

在Java中,我们可以使用Calendar类进行日期计算。如下所示:

a. 增加日期

Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, 1);
Date date = calendar.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String time = sdf.format(date);
System.out.println("增加1天后的日期:" + time);

输出的结果为:

增加1天后的日期:2021-08-13

b. 减少日期

Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, -1);
Date date = calendar.getTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String time = sdf.format(date);
System.out.println("减少1天后的日期:" + time);

输出的结果为:

减少1天后的日期:2021-08-11

c. 获取两个日期之间的天数

Date date1 = sdf.parse("2021-08-01");
Date date2 = sdf.parse("2021-08-12");
long days = (date2.getTime() - date1.getTime()) / (24 * 60 * 60 * 1000);
System.out.println("2021-08-01与2021-08-12相差的天数为:" + days);

输出的结果为:

2021-08-01与2021-08-12相差的天数为:11

总结

Java提供了多种处理日期和时间的函数和类,包括获取当前时间、格式化输出和日期计算等。这些函数和类能够满足我们对日期和时间的常规需求。同时,在使用时需要注意格式化字符的含义和使用方式。