Java日期时间函数大全 - 让时间处理变得更简单
在 Java 中,日期时间是常用的数据类型之一。Java 提供了许多内置函数来处理日期和时间,使它们变得更容易、更方便。
本文将介绍一些常用的日期时间函数,以及它们的作用和用法。
1.获取当前日期时间
获取当前日期时间最常用的方法是使用 java.util.Calendar 类或 java.util.Date 类。以下是两种方法:
// 方法1 Calendar cal = Calendar.getInstance(); Date date = cal.getTime(); // 方法2 Date date = new Date();
2.获取指定格式的日期时间
Java 中可以使用 SimpleDateFormat 类来获取指定格式的日期时间。以下是一个例子:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = format.format(new Date());
这将返回当前日期时间,格式为 yyyy-MM-dd HH:mm:ss。
3.字符串转化为日期时间
Java 中可以使用 SimpleDateFormat 类将字符串转化为日期时间。以下是一个例子:
String dateStr = "2021-08-23 10:23:54";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = format.parse(dateStr);
这将返回一个日期时间类型的对象,其值为字符串 dateStr 表示的日期时间。
4.日期时间转化为字符串
Java 中可以使用 SimpleDateFormat 类将日期时间转化为字符串。以下是一个例子:
Date date = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr = format.format(date);
这将返回一个字符串,其值为当前日期时间,格式为 yyyy-MM-dd HH:mm:ss。
5.比较两个日期时间
Java 中可以使用 Date 类或 Calendar 类比较两个日期时间,以下是两种方法:
// 方法1
Date date1 = new Date();
Date date2 = new Date();
if (date1.compareTo(date2) > 0) {
System.out.println("date1 在 date2 之后");
}
// 方法2
Calendar cal1 = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
if (cal1.after(cal2)) {
System.out.println("cal1 在 cal2 之后");
}
6.计算两个日期时间之间的差值
Java 中可以使用 Date 类或 Calendar 类计算两个日期时间之间的差值。以下是一个例子:
Date date1 = new Date();
Date date2 = new Date();
long timeDiff = date2.getTime() - date1.getTime();
System.out.println("时间差:" + timeDiff + " 毫秒");
这将返回两个日期时间之间的毫秒差值。
7.获取某个日期时间的年、月、日、时、分、秒等值
Java 中可以使用 Date 类或 Calendar 类获取某个日期时间的年、月、日、时、分、秒等值。以下是一个例子:
Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); int year = cal.get(Calendar.YEAR); int month = cal.get(Calendar.MONTH) + 1; int day = cal.get(Calendar.DAY_OF_MONTH); int hour = cal.get(Calendar.HOUR_OF_DAY); int minute = cal.get(Calendar.MINUTE); int second = cal.get(Calendar.SECOND);
8.添加或减少某个日期时间的年、月、日、时、分、秒等值
Java 中可以使用 Date 类或 Calendar 类添加或减少某个日期时间的年、月、日、时、分、秒等值。以下是一个例子:
Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); cal.add(Calendar.DAY_OF_MONTH, 1); // 将日期时间增加一天 cal.add(Calendar.MINUTE, -10); // 将日期时间减少十分钟 Date newDate = cal.getTime(); // 获取修改后的日期时间
9.获取某月的天数
Java 中可以使用 Calendar 类或 GregorianCalendar 类获取某个月的天数。以下是一个例子:
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, 2021);
cal.set(Calendar.MONTH, 2); // 3 月
int days = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println("3月的天数:" + days);
这将打印出 3 月的天数。
10.判断某一年是否为闰年
Java 中可以使用 GregorianCalendar 类判断某一年是否为闰年。以下是一个例子:
GregorianCalendar calendar = new GregorianCalendar();
boolean isLeapYear = calendar.isLeapYear(2020);
if (isLeapYear) {
System.out.println("2020 是闰年");
} else {
System.out.println("2020 不是闰年");
}
这将打印出 2020 是闰年。
