Java日期加减运算
2026/4/6 20:15:58 网站建设 项目流程

Java 日期加减运算(推荐写法)

1. Java 8+ 推荐:LocalDateTime / LocalDate
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;

public class DateTest {
public static void main(String[] args) {
// 当前时间
LocalDateTime now = LocalDateTime.now();
System.out.println("当前时间:" + now);

// 加
LocalDateTime plus1Day = now.plusDays(1); // 加1天
LocalDateTime plus1Hour = now.plusHours(1); // 加1小时
LocalDateTime plus1Month = now.plusMonths(1); // 加1个月
LocalDateTime plus1Year = now.plusYears(1); // 加1年

// 减
LocalDateTime minus1Day = now.minusDays(1); // 减1天
LocalDateTime minus1Hour = now.minusHours(1); // 减1小时

// 通用方式:加任意单位
LocalDateTime plus = now.plus(5, ChronoUnit.MINUTES); // 加5分钟
}
}
LocalDate 用法一模一样,只是没有时分秒。
2. 老版本:Date / Calendar
import java.util.Calendar;
import java.util.Date;

public class DateTest {
public static void main(String[] args) {
Date date = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(date);

// 加
cal.add(Calendar.DAY_OF_MONTH, 1); // 加1天
cal.add(Calendar.HOUR, 1); // 加1小时
cal.add(Calendar.MONTH, 1); // 加1月

// 减
cal.add(Calendar.DAY_OF_MONTH, -1); // 减1天

Date newDate = cal.getTime();
}
}
3. 计算两个日期相差多少天
LocalDate d1 = LocalDate.of(2025, 1, 1);
LocalDate d2 = LocalDate.of(2025, 1, 10);
long days = ChronoUnit.DAYS.between(d1, d2); // 相差天数
总结

• 新项目一律用 Java 8+ 的 LocalDate / LocalDateTime

• 线程安全、API 清晰、无坑

• 加减:plusXxx() / minusXxx()

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询