Comment puis-je comparer si mytime
est entre fromtime
et totime
:
Timestamp fromtime;
Timestamp totime;
Timestamp mytime;
if(mytime.after(fromtime) && mytime.before(totime))
//mytime is in between
Utilisez les méthodes before
et after
: Javadoc
if (mytime.after(fromtime) && mytime.before(totime))
De: http://download.Oracle.com/javase/6/docs/api/Java/sql/Timestamp.html#compareTo(Java.sql.Timestamp)
public int compareTo(Timestamp ts)
Compare cet objet Timestamp à l'objet Timestamp donné . Paramètres: ts - l'objet Timestamp à comparer à cet objet Timestamp Résultats: la valeur 0 si les deux objets Timestamp sont égaux; une valeur inférieure à 0 si cet objet Timestamp est avant l'argument donné; et une valeur supérieure à 0 si cet objet Timestamp se situe après l'argument donné . Puisque: 1.4
if (!mytime.before(fromtime) && !mytime.after(totime))
Vous pouvez trier l'horodatage comme suit:
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;
}
Java.util.Date mytime = null;
if (mytime.after(now) && mytime.before(last_download_time) )
A travaillé pour moi
Toutes ces solutions ne fonctionnent pas pour moi, bien que ce soit la bonne façon de penser.
Ce qui suit fonctionne pour moi:
if(mytime.isAfter(fromtime) || mytime.isBefore(totime)
// mytime is between fromtime and totime
Avant d’essayer, j’ai aussi pensé à votre solution avec &&