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

Java时间函数:了解常用的Date和Calendar函数,处理时间数据更加方便

发布时间:2023-06-10 14:33:04

在Java中,时间函数是一个非常重要的部分,我们可以使用时间函数来对时间进行操作,比如:获取当前时间,设置时间,计算时间差,格式化日期等等。因此,学习Java时间函数对于Java编程来说至关重要。本文将向大家介绍Java中的两个常用时间类:Date和Calendar,并讲解常用的时间函数。

一、Date类

Java中的Date类是用于表示日期和时间的类。它提供了一些关于日期和时间的方法,如获取当前时间、格式化时间等。

1、获取当前时间

获取当前时间可以使用Date类中的无参构造方法,或使用System.currentTimeMillis()方法。

使用无参构造方法:

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

使用System.currentTimeMillis()方法:

long currentTime = System.currentTimeMillis();
Date date2 = new Date(currentTime);
System.out.println(date2);

2、日期格式化

我们可以使用SimpleDateFormat类将日期格式化为一个字符串,常用的格式化参数如下:

| 符号 | 解释 |

| --- | --- |

| yyyy | 四位数的年份 |

| MM | 月份,带前导零 |

| M | 月份,不带前导零 |

| dd | 日期,带前导零 |

| d | 日期,不带前导零 |

| HH | 小时数,24小时制,带前导零 |

| H | 小时数,24小时制,不带前导零 |

| mm | 分钟数,带前导零 |

| m | 分钟数,不带前导零 |

| ss | 秒数,带前导零 |

| s | 秒数,不带前导零 |

以下是一个将日期格式化为“yyyy-MM-dd HH:mm:ss”的示例:

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

二、Calendar类

Calendar类是Java中的日历类,它提供了许多操作日历的方法,例如:获取指定日期,计算日期差等。

1、获取指定日期

使用Calendar类可以获取指定日期,可以通过一个时间戳或通过手动设置年、月、日等来获取。

使用一个时间戳获取指定日期:

Calendar c = Calendar.getInstance();
long timestamp = 1496790000000L;
c.setTimeInMillis(timestamp);
System.out.println(c.getTime());

使用手动设置来获取:

Calendar c = Calendar.getInstance();
c.set(2017, Calendar.JUNE, 29);
System.out.println(c.getTime());

2、计算日期差

使用Calendar类可以计算两个日期之间的差值。

计算两个日期之间的天数:

Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.set(2019, Calendar.AUGUST, 30);
c2.set(2019, Calendar.SEPTEMBER, 10);

long diff = (c2.getTimeInMillis() - c1.getTimeInMillis()) / (1000 * 60 * 60 * 24);
System.out.println("两个日期之间相差 " + diff + " 天");

计算两个日期之间的小时数、分钟数、秒数类似,只需要将单位换成合适的值即可。

以上就是Java中Date和Calendar常用的时间函数的介绍。通过学习这些函数,您可以更方便地操作和处理时间数据。在实际项目中,这些函数也是您必须掌握的知识点,希望对您的学习有所帮助。