我有一个按日期排序的数据表,用户可以通过提供开始和结束日期从中选择一组数据。数据本身是不连续的,因为我没有周末和公共(public)假期的数据。
我希望能够在提取的数据集中列出我没有数据的所有日期。在 Java 中是否有一种简单的方法:
- 这是一个有序的日期数组。
- 这是选定的开始日期。 (数组中的第一个日期并不总是开始日期)
- 这是选定的结束日期。 (数组中的最后一个日期并不总是结束日期)
- 返回没有数据的日期列表。
最佳答案
您可以创建一个临时列表并根据需要对其进行 x 化。
(不是真正的 Java。抱歉,我对它的内存很糟糕。)
dates = [...]; // list you have now;
// build list
unused = [];
for (Date i = startdate; i < enddate; i += day) {
unused.push(i);
}
// remove used dates
for (int j = 0; j < dates.length; j += 1) {
if (unused.indexOf((Date) dates[j]) > -1) { // time = 00:00:00
unused.remove(unused.indexOf((Date) dates[j]));
}
}
关于java - 如何从 Java 中的非连续日期数组中列出缺失的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/347656/