java - 预订系统的日期验证

标签 java date

我正在尝试在我的预订系统项目中设置用户取消的到期日期,并且我已经尝试过此代码,但它不起作用,并且逻辑上不正确。谁能帮助我想出为我的项目实现此功能的想法?

    Date expiryDate = new Date().after(startDate) -7 
    if(startDate.before(expiryDate))

我们的想法是,如果到期日期距离航类开始日期接近一周,用户应该无法取消预订。在现实世界中,我们发现,如果订单在下单后 24 小时内发货且过了 24 小时,我们将无法取消订单。

最佳答案

使用LocalDate而不是日期,因为它现在已折旧。

LocalDate startDate = LocalDate.of(2020, 05, 01);
LocalDate expDate = LocalDate.of(2020, 04, 01);

if (startDate.minusWeeks(1).isBefore(expDate)) {
    System.out.println("No problem here");
} else {
    System.out.println("Cant cancel");
}

此处,检查开始日期减去一周是否在到期日期之前。如果是,那么用户可以取消票,否则他不能。

关于java - 预订系统的日期验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60681901/

相关文章:

java - 使用 JSch 创建通过 SSH 隧道传输的 SOCKS 代理

php - 为什么 PHP 日期的迭代数周会出错?

r 按 ID 的最小最大日期和 ID 内的多个状态更改

java - ListView 正确显示数据但错误选择

java - 如何通过反射正确实例化内部类?

java - Apache POI - 允许使用时间字符串进行计算

java - 使用表主键在 Record 中生成 equals 和 hashCode

mysql - SQL - 计算每个用户每天的登录次数

mysql - 如何在 mysql 上确定每个月的 1 号和 15 号

swift - 快速比较复杂的两个日期