Verificar se uma data sem Timestemp é igual/anterior/posterior à outra data
Para fazer essa verificação vamos utilizar a API de Data e Timestamp do Java, a classe Calendar:
Consideremos o código abaixo, ele recupera uma instância com o método "Calendar.getIntance()" e utilizamos o método clear para remover os valores do timestamp, informado cada uma das informações separadamente.
Essa instância contem a data atual.
Essa instância contem a data atual.
Calendar cal = Calendar.getInstance(); cal.clear(Calendar.HOUR_OF_DAY); cal.clear(Calendar.AM_PM); cal.clear(Calendar.MINUTE); cal.clear(Calendar.SECOND); cal.clear(Calendar.MILLISECOND);O trecho de código abaixo, tem praticamente a mesma função do trecho acima, porem ao invés de ele trabalhar com a data atual, nos fazemos um set da data a ser comparada com o método "cal1.setTime(data)".
Calendar cal1 = Calendar.getInstance(); cal1.setTime(data);//Data a ser comparada cal1.clear(Calendar.HOUR_OF_DAY); cal1.clear(Calendar.AM_PM); cal1.clear(Calendar.MINUTE); cal1.clear(Calendar.SECOND); cal1.clear(Calendar.MILLISECOND);Se consideramos os trechos de código acima, nos temos duas instâncias do Calendar, ambas sem o timestamp, agora basta fazermos a comparação.
cal1.after(cal);//retorno true caso cal1 seja posterior a cal cal1.before(cal);//retorno true caso cal1 seja anterior a cal cal1.equal(cal);//retorno true caso cal1 seja igual a cal
Comments
Post a Comment