【Java】日期工具类详解
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class DateUtil {
// 将日期格式化为 "yyyyMMdd" 格式
public static String formatDate(LocalDate date) {
if (date == null) {
return null;
}
return date.format(DateTimeFormatter.BASIC_ISO_DATE);
}
// 将字符串解析为日期,字符串格式应为 "yyyyMMdd"
public static LocalDate parseDate(String dateStr) {
if (dateStr == null) {
return null;
}
return LocalDate.parse(dateStr, DateTimeFormatter.BASIC_ISO_DATE);
}
// 比较两个日期是否相等
public static boolean isSameDate(LocalDate date1, LocalDate date2) {
if (date1 == null || date2 == null) {
return false;
}
return date1.isEqual(date2);
}
public static void main(String[] args) {
LocalDate today = LocalDate.now();
System.out.println("今天的日期(格式化): " + formatDate(today));
LocalDate birthday = parseDate("20000101");
System.out.println("生日: " + birthday);
boolean isBirthdayToday = isSameDate(today, birthday);
System.out.println("今天是生日吗? " + isBirthdayToday);
}
}
这段代码使用了Java 8引入的java.time
包中的LocalDate
类来表示日期,并用DateTimeFormatter
来格式化和解析日期。它提供了三个方法:formatDate
用于格式化日期,parseDate
用于解析字符串为日期,isSameDate
用于比较两个日期是否相等。代码中还包含了一个简单的main方法,展示了如何使用这些方法。
评论已关闭