Java时间函数:了解常用的Date和Calendar函数,处理时间数据更加方便
在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常用的时间函数的介绍。通过学习这些函数,您可以更方便地操作和处理时间数据。在实际项目中,这些函数也是您必须掌握的知识点,希望对您的学习有所帮助。
