Как я могу сравнить, если mytime
находится между fromtime
и totime
:
Timestamp fromtime;
Timestamp totime;
Timestamp mytime;
Как я могу сравнить, если mytime
находится между fromtime
и totime
:
Timestamp fromtime;
Timestamp totime;
Timestamp mytime;
if(mytime.after(fromtime) && mytime.before(totime))
//mytime is in between
Используйте методы before
и after
: Javadoc
if (mytime.after(fromtime) && mytime.before(totime))
От: http://download.oracle.com/javase/6/docs/api/java/sql/Timestamp.html#compareTo(java.sql.Timestamp)
public int compareTo(Timestamp ts)
Сравнивает объект Timestamp с данным объектом Timestamp. Параметры: ts - объект Timestamp, который будет сравниваться с объектом Timestamp Возвращает: значение 0, если два объекта Timestamp равны; значение меньше 0, если этот объект Timestamp находится перед данным аргументом; и значение больше 0, если этот объект Timestamp находится после данного аргумента. Поскольку: 1.4
if (!mytime.before(fromtime) && !mytime.after(totime))
Есть after и before методы для Timestamp
, которые сделают трюк
java.util.Date mytime = null;
if (mytime.after(now) && mytime.before(last_download_time) )
Работал для меня
Вы можете сортировать временную метку следующим образом:
public int compare(Timestamp t1, Timestamp t2) {
long l1 = t1.getTime();
long l2 = t2.getTime();
if (l2 > l1)
return 1;
else if (l1 > l2)
return -1;
else
return 0;
}
Все эти решения не работают для меня, хотя правильный способ мышления.
Для меня работает следующее:
if(mytime.isAfter(fromtime) || mytime.isBefore(totime)
// mytime is between fromtime and totime
Прежде чем я попытался, я подумал о вашем решении с помощью && тоже
Просто преобразуйте метку времени в представление миллисекунда. Используйте метод getTime().