Quantidade de dias decorridos: 182
Quantidade de horas (resultado): 4369,00
Porém, facilmente vemos que 182 * 24 = 4368
Ou seja, em alguns periodos (desconfio que sejam em periodos grandes) é acrescentado 1 hora no resultado. Desconfio que tenha algo haver com o horário de verão…
Pra fazer calculos com datas o melhor é utilizar a classe java.util.Calendar. você pode configurar o timazone também assim evita problemas com fuso horário
A
ataufo
não existe problemas com fuso horário nessa questão amigo
me mostra como resultado 4368, o teu problema pode ter sido na hora de setar a parte de horas na data.
A
ataufo1 like
viniGodoy,
calculei a quantidade de dias decorridos conforme o código abaixo. Porque a pergunta? Desconfia de algo?
// COLOQUEI OS DOIS MÉTODOS AQUI:/***Calculardiferencaemhorasentreduasdatas.**@paramfirstDateDatainicial.*@paramlastDateDatafinal.*@returnintOnumerodehoras.*/publicstaticdoubledateDiffHoras(finalDatefirstDate,finalDatelastDate){return(lastDate.getTime()-firstDate.getTime())/(double)(1000*60*60);}/***Calculardiferencaemdiasentreduasdatas.**@paramfirstDateDatainicial.*@paramlastDateDatafinal.*@returnintOnumerodedias.*@throwsExceptionexception.*/publicstaticintdateDiffDays(finalDatefirstDate,finalDatelastDate)throwsException{returnMath.round(dateDiffHours(firstDate,lastDate)/(float)24);}// ACABEI DE DESCOBRIR QUE ESTÁ USANDO ESSE MÉTODO AQUI:/***Calculardiferencaemhorasentreduasdatas.**@paramfirstDateDatainicial.*@paramlastDateDatafinal.*@returnintOnumerodehoras.*/publicstaticintdateDiffHours(finalDatefirstDate,finalDatelastDate){returnMath.round((lastDate.getTime()-firstDate.getTime())/(float)(1000*60*60));}// SERÁ QUE É ISSO?
A
ataufo
Dobau,
executei o seu código e apresentou o resultado 4369… Não sei como vc chegou ao resultado 4368…