Java: Как сохранить временную шкалу / расписание, полное или пустое местоположение от времени x до y (интервал)?
Краткая предыстория:
У меня есть приложение Java, котороеИспользуется, чтобы увидеть, когда определенные места (классные комнаты) используются или нет. Пользователь помещает идентификатор местоположения в окно поиска, и программа отображает любые соответствующие события (классы). Приложение будет отображать всю соответствующую информацию (имя класса, номер комнаты, имя профессора, день недели, время занятий), классы, которые находятся в сеансе (или скоро будут), имеют цветовую кодировку, так что вы можете сказать на -смотреть, если естьЧто-нибудь подходит. Данные взяты из HTML-страницы I 'Я соскребаю с (я ненет доступа к SQL).
Все к этому моменту работает, яЯ использую JavaSwing для пользовательского интерфейса. События хранятся как базовый объект, который я сделал для его хранения, единственная часть, которая имеет значение для моего вопроса, - это то, что он сохраняет в объектах Java Date время начала и окончания каждого события.
Что я'Сейчас я пытаюсь сделать это, добавив способ проверки и отображения промежутков между событиями (когда классная комната пуста). У меня есть все данные, которые мне нужны (все время начала и окончания), но яЯ не могу придумать способ фактически кодировать программу, чтобы увидеть пробелы.
И если этоне достаточно сложно: я хочу реализовать это как можно проще, не используя никаких дополнительных библиотек. Я нене хочу воссоздавать колесо, но ягораздо лучше хешировать код вручную, чем просто добавить импорт и пару вызовов методов; Половина этого проекта - бросить вызов самому себе.
Сейчас яя не ищу совет о том, как на самом деле отображать данные, а пока яЯ просто пытаюсь логически организовать его в удобном для использования виде. В конечном итоге это будет отображаться в JTable, но яЯ пока не работаю над этой реализацией.
Мой скребок вытаскивает из таблицы HTML что-то вроде10:00AM - 11:15AM
и разбирает его на две строки10:00AM
а также11:15AM
, Они передаются с другими данными моему объекту курса.
Мой объект курса имеет набор DateFormat, поэтому он может интерпретировать поступающие строки в даты.
public class Course {
static DateFormat tf = new SimpleDateFormat("h:mma");
private String name;
private String room;
private String instructor;
private Date start;
private Date end;
private String days;
public Course(String n, String r, String in, String st, String ed, String d) throws ParseException{
name=n;
room=r;
instructor=in;
start=tf.parse(st);
end=tf.parse(ed);
days=d;
}
//...basic getters, setters, and a toString()
Идея в том, что яБуду устанавливать два раза, устанавливая окно, в котором я хочу проверить наличие пробелов. Я хочу выбрать интервал, скажем, 15 минут, и найти все промежутки в 15 или более минут, в течение которых классная комната пуста, т.е.