例如,我有一些日期日期的拆分陣列分成多個陣列
陣列2016-11-11T12:13:14.120Z
2016-11-12T12:13:14.120Z
2016-11-13T12:13:14.120Z
2016-12-10T12:12:14.120Z
2016-12-10T12:13:14.120Z
2016-12-10T15:13:14.120Z
2016-12-11T12:13:14.120Z
2017-01-11T12:13:14.120Z
我需要實現類似此:
[[2016-11-11T12:13:14.120Z, 2016-11-12T12:13:14.120Z], [2016-11-13T12:13:14.120Z], [2016-12-10T12:12:14.120Z,2016-12-10T12:13:14.120Z,2016-12-10T15:13:14.120Z, 2016-12-11T12:13:14.120Z], [2017-01-11T12:13:14.120Z]]
如果第一和n + 1之間的日期差爲小於24小時這個日期必須在陣列,否則 - 創建下一個陣列等。
我可以只寫類似的東西
int step = 24;
int currentPos = 0;
ArrayList<ArrayList<Item>> result = new ArrayList<>();
ArrayList<Item> currentArray = new ArrayList<>();
for (int i = 0; i < items.size(); i++) {
Item item = items.get(currentPos);
for (int j = 0; j < items.size(); j++) {
int tmp = currentPos + 1;
if (DateUtils.getDifferenceInHours(item.getEndDate(), items.get(tmp).getEndDate()) <= step) {
currentArray.add(items.get(tmp));
currentPos++;
} else {
currentArray.add(item);
result.add(currentArray);
currentArray = new ArrayList<>();
currentPos++;
break;
}
}
}
但我有IndexOutOfBoundsException異常 請幫助!
你有什麼迄今所做?顯示你的代碼。 –
@KNeerajLal我已經做了日期比較,但我不能寫一個正確的循環來實現正確的結果 –
顯示您的代碼並嘗試解釋問題是什麼。 –