web-dev-qa-db-fra.com

Comparer deux horodatage en java

Comment puis-je comparer si mytime est entre fromtime et totime:

Timestamp fromtime;
Timestamp totime;

Timestamp mytime;
39
user620130
if(mytime.after(fromtime) && mytime.before(totime))
  //mytime is in between
58

Utilisez les méthodes before et after: Javadoc

if (mytime.after(fromtime) && mytime.before(totime))
14
Jean Logeart

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

9
NickLH
if (!mytime.before(fromtime) && !mytime.after(totime))
4
Maurice Perry

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;
}
1
borchvm

Il y a après et avant méthodes pour Timestamp qui feront l'affaire

1
Vladimir
Java.util.Date mytime = null;
if (mytime.after(now) && mytime.before(last_download_time) )

A travaillé pour moi

1
NITIN

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 &&

0
Giulia JJ Merlini