Horas

5 respostas
Bravox

Fala Galera !!!

Estou precizando comparar horas alguém pode me dar uma dica ??

bravox

5 Respostas

A

Veja a documentação da classe Date, especificamente os métodos compareTo, before e after.

Abraço,

Armando

rmarin

Cria um date passando somente as horas como pattern de um SimpleDateFormat: “HH”. Depois compara com o método equals.

Você precisa comparar só as horas ou minutos e segundos também?

cassio

Compara em que sentido!? Maior ou menor?! Igual ou diferente!?

algumas idéias…
O método getTime() da classe Date retorna um long que representa o horário atual em milissegundos (um número relativamente grande)

long tempo1 = new Date().getTime();
...
long tempo2 = new Date().getTime();

if(tempo 1 == tempo 2) 
   System.out.println("Tempos iguais");
else System.out.println("Tempod diferentes!");

...

if(tempo1 > tempo2)
   System.out.println("tempo1 eh posterior a tempo2");

//etc etc

mas fazendo desse jeito vai ficar dificil vc conseguir que sejam iguais, porque acertar até nos milliseggundos, vai ser preciso assim lá longe…
Uma idéia é dividir por 1000 e arrancar os milissegundos truncando para inteiro, ficando só com os segundos…
Não sei se Java tem classe pra tratar de tempo melhor que Date, então faço assim… No C não tinha muitos recursos… heheheh

Abraço!

Bravox

Valeuuuuuuuu !!! Rapaziada !!!

bravox

rmarin

Deste modo é melhor do que eu tinha falado antes:

public static void main(String[] args) {
        
        Date date = new Date();
        Date date1 = new Date();
        
        Calendar c = Calendar.getInstance();
        Calendar c1 = Calendar.getInstance();
        
        c.setTime(date);
        c1.setTime(date1);
        
        if(c.get(Calendar.HOUR_OF_DAY) == c1.get(Calendar.HOUR_OF_DAY)) {
            System.out.println("Horas Iguais");
        }
        
    }

Abraço,
Roberto Marin

Criado 22 de agosto de 2006
Ultima resposta 22 de ago. de 2006
Respostas 5
Participantes 4