pessoal tenho a minha data neste formato
[code]
Objecto data (dia, mes, ano)
public int kuantosdiasPassaram( data other){
}[/code]
alguma ajuda, quero saber kuantos dias passaram de uma data a outra dada como parametro,
pessoal tenho a minha data neste formato
[code]
Objecto data (dia, mes, ano)
public int kuantosdiasPassaram( data other){
}[/code]
alguma ajuda, quero saber kuantos dias passaram de uma data a outra dada como parametro,
através do método getTime da classe Date você consegue os milissegundos desde 01/01/1970.
pegue os valores das duas datas e subtraia, assim você vai ter quantos milissegundos passaram de uma data pra outra…
aí é só questão de fazer conta… 1 segundo tem 1000 milissegundos, 1 minuto tem 60 segundos, 1 hora 60 minutos e 1 dia 24 horas…
fiz uma minha propria classe Date…dai n posso pegar este metodo… :?
Duas perguntas:
Apesar de não ser exatamente bom, Java já tem maneiras de lidar com data que te permitem fazer essas operações. Minha sugestão é usar as classes já existentes que podem facilitar seu trabalho.
Boas, eu sei k é mais vantajoso usar o k o java ja da, mas preciso de implementar minha propria classe para o trabalho…
Com java.util.Date:
Date data1 = ...
Date data2 = ...
// 1 dia = 86400000 milisegundos (24 * 60 * 60 * 1000).
long diferencaEmDias = (data1.getTime() - data2.getTime()) / 86400000L;
Bem, neste caso, o seu problema é entender a matemática necessária. Isso vai depender da forma como você está implementando a seua classe Data.
Se você tem os atributos dias mês e ano, converte tudo pra dias e faz a operação. O problema disso é que você vai ter que calcular na mão os dias de cada mês.
Você pode usar o construtor do Date para criar a data: new Date(year, month, date) - está deprecated;