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

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

发布时间:2023-05-21 16:44:43

Java中的日期与时间函数涵盖了许多功能,例如获取当前时间、格式化日期、时间计算等。这些功能不仅可以帮助程序员处理日期与时间相关问题,而且还可以使程序更加灵活和智能化。下面将介绍一些常用的日期与时间函数。

1. 获取当前时间

获取当前时间可以使用Java提供的Date类,该类可以通过一个无参构造方法来创建当前时间对象。具体代码如下:

Date now = new Date();

也可以使用System类中的currentTimeMillis()方法获取当前时间的毫秒数。具体代码如下:

long now = System.currentTimeMillis();

2. 格式化日期

Java中的日期和时间通常需要进行格式化输出,可以使用SimpleDateFormat类来实现。具体代码如下:

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

输出结果为:2021-01-01 12:00:00

在上面的代码中,我们指定了日期格式为“yyyy-MM-dd HH:mm:ss”,即年-月-日 时:分:秒。还可以指定其他格式,如:

SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd");
SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm:ss");

3. 时间计算

在Java中,我们可以使用Calendar类进行日期计算,例如计算两个日期之间的相隔天数。具体代码如下:

Calendar start = Calendar.getInstance();
Calendar end = Calendar.getInstance();
start.set(2021, 1, 1);
end.set(2022, 1, 1);
long days = (end.getTimeInMillis() - start.getTimeInMillis()) / (1000 * 3600 * 24);
System.out.println(days);

在上段代码中,我们可以看到,首先我们使用getInstance()方法获取了当前时间的Calendar对象;然后使用set()方法设置了两个日期的年、月、日;最后通过计算两个时间相差的毫秒数,除以一天的毫秒数,得到相隔的天数。

使用Calendar类还可以进行日期加减运算,以及设置指定时间。例如:

Calendar c1 = Calendar.getInstance();
c1.add(Calendar.HOUR, 2); //增加两小时
c1.set(Calendar.MINUTE, 30); //设置分钟数为30

以上就是Java中的一些基本日期和时间函数。在实际开发过程中,根据需求不同,可能需要用到更多的日期和时间处理功能。需要注意的是,Java中的日期和时间类不是线程安全的,如果在多线程中使用,需要注意同步问题。