我有一个日期选择器,用户可以在其中选择一个日期,然后选择一个复选框,说明他想要从中获取日期的时间类型。例如:
用户选择 11 月的 1. 并选中“月份”复选框,在这种情况下,结束日期将增加 1,即使这听起来很简单,但它慢慢开始让我很恼火!
问题是Java没有一个很好的日期对象来处理这种事情,所以我认为我会使用日历,但增加日历日期并不容易,例如以下示例:
endDate.set(startDate.YEAR, startDate.MONTH+1, startDate.DATE);
从理论上讲,这将使月份比开始日期大一。这适用于从 12 月开始的大约 90% 的月份,如果您在 12 月将月份增加 1,那么整数月份返回 13 会发生同样的事情,startDate.DATE;
并且startDate.Year;
我的问题是没有更简单的方法可以做到这一点吗?我可以写很多 If 句子,但我真的认为这有点多余。