Quote Originariamente inviata da LeleFT Visualizza il messaggio
Beh, prima controllerai che vi siano effettivamente 8 ore. Altrimenti non se ne fa nulla.
Se le 8 ore ci sono, controllerai l'altro intervallo per le notturne.


codice:
Date d1 = ...;
Date d2 = ...;

// Suppongo che d1 sia l'orario di inizio e d2 quello di fine
long diff = d2.getTime() - d1.getTime();   // differenza in millisecondi
if (diff >= (8 * 60 * 60 * 1000)) {
   // Ok, sono almeno 8 ore
   // Faccio il controllo sulle notturne, come da precedente post
   // (immagino che il controllo dovrai farlo su d2)
   ...
}

Ciao.
Esatto d1 è la data di inizio e d2 quella di fine. Nello specifico come controllo se ci sono 4 ore di lavoro notturno?

L'avevo pensata così:
codice:
if ((millisMin >= millis) && (millis <= millisMax)) {
// Sì, l'ora è fra le 22:00 e le 04:00
System.out.println("entra nell'intervallo");
    if(diff >= 4 * 60 * 60 * 1000){
//almeno 4 ore notturne possiamo passare alla verifica se c'è diaria
    System.out.println("le 4 ore ci sono");
        if(diff >= 8 * 60 * 60 * 1000){
        System.out.println("ci sono anche le 8 ore");

        }
    }
}
Che ne dici?