У меня есть два объекта MyDate
.Как проверить наличие временной метки даты в интервале времени
class MyDate {
public int hours, minutes;
MyDate(int hours, int minutes) {
this.hours = hours;
this.minutes = minutes;
}
}
MyDate startTime;
MyDate endTime;
и у меня есть метка времени как третий объект MyDate.
MyDate currentTime;
Я хочу знать, currentTimeStamp включен или нет в интервале ENDDATE - STARTDATE
[------------[startTime]------------[currentTime]-----------------[endTime]--------------]
Я вижу три комбинации времени:
- 23:00 - 08:00 (07:00 - настоящая)
- 12:00 - 13:00 (7:00 - ложь)
- 23:59 - 23:58 (7:00 - правда)
Объяснить третий случай:
[-----------------(23:59)(00:00 - new Day)--(07:00)----------(23:58)--(00:00 - new Day)]
Как я могу проверка currentTimeStamp включен или нет в интервале endDate - startDate?
Есть ли причина, по которой вы не используете проверенную библиотеку времени, такую как Jodatime, и вместо этого используете свои собственные даты? – Afforess
@ Хочу, чтобы я реализовал это с любыми сторонними библиотеками. Это альгорифмическая проблема. –
Чтобы выяснить, находится ли время внутри интервала, вам нужно проверить, если сначала, если дата равна _after_ времени начала и _before_ времени окончания. Если оба условия истинны, то дата находится внутри интервала. Создайте два метода: один, чтобы проверить, есть ли время до другого времени, а другое - проверить, будет ли время после другого времени, тогда проблема станет простой. – Afforess