java - 如何在Java中查找两个日期之间的所有有效日期

标签 java date calendar

我有 2 个日期:

Calendar c1 = Calendar.getInstance();
c1.set(2014, 1, 1);

Calendar c2 = Calendar.getInstance();
c2.set(2013, 11, 1);

如何获取这两个日期之间(并包括这两个日期)的所有有效日期的列表?

最佳答案

我通常还建议使用 joda-time ,但这是一个纯 Java 解决方案:

Calendar c1 = Calendar.getInstance();
c1.set(2013, 1, 1);

Calendar c2 = Calendar.getInstance();
c2.set(2014, 11, 1);

while (!c1.after(c2)) {
    System.out.println(c1.getTime());

    c1.add(Calendar.DAY_OF_YEAR, 1);
}

本质上:不断增加较早的日期,直到它落在较晚的日期之后。如果你想将它们保留在实际的 List<Calendar> 中,您需要复制 c1在每次迭代中并将副本添加到列表中。

关于java - 如何在Java中查找两个日期之间的所有有效日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24723951/

相关文章:

Java 表示一个月中日期的最佳方式/推荐数据结构,例如 1 月 1 日

ruby-on-rails - mongoid/事件模型的日期验证助手?

html 输入类型 ="date"在 chrome 上无法正常工作

java - 如何在 Android Kotlin 的列表中存储 24 小时格式

java - 无法编译为 android (Unity)

java - 如何解决jdom2库中的IllegalDataException?

java - 将 Oracle SQL 的十六进制转换转换为 Java 代码

java - Android 应用程序正在缓存 JSON

javascript - 如何阻止 javascript 更改我的日期?

java - 我的 bean 中有一个字符串日期 yyyymm,想要与当前月份或上一个日历日期进行比较