Dúvida com algoritmo!

E ae galera , tranquilinho ?

É o seguinte…to querendo implementar uma classe Data que guarde o dia,mes e ano e realize diversas operações com eles.

Entre diversos métodos eu quero criar o método public Data avançar ( int n ), que faz com que retorne um objeto com a data avançada em n dias já acertando o mês e o ano.

Só que tá meio dificil pensar numa logica limpa…eu fiz com um switch mas ficou ridiculo…ficou gigante e sujo.
Ai gostaria que vocês pudessem dar uma ajuda ae !

Ai vai o codigo !
Data.java

[]´s !

Tente

GregorianCalendar gc = new GregorianCalendar();
gc.add(GregorianCalendar.DAY_OF_MONTH, numDeDias);
Date data = gc.getTime();

[]'s
carisio

Não cara…não posso usar a classe Calendar do Java !
É como se eu tivesse que criar a minha…reinventar a roda !

8O

cara, o jeito é encher de condicional mesmo…tipo, verificar se o mes tem 28, 29, 30 ou 31 dias pra incrementar certo…se eh ano bissexto…isso tudo.

lembro de ter feito uma faz tempo, no primeiro periodo, so num sei se tenho ela aqui ainda…vou dar uma procurada, se eu encontrar posto aqui, ai se voce tiver interesse da uma olhada…

flw

sim sim Adicted !
Isso eu já fiz…
eu tô me enrolando é com os mods ( % ) !
Tem que fazer um mod dentro do outro para ele ir para o inicio do proximo mês e depois para o início do proximo ano.
Não to conseguindo pensar direito :???:

Se tu achar o código ai seria de grande ajuda.
Valeu pela força !
[]´s !

armazena a data internamente como as linguagens costumam fazer… ou seja, armazene um inteiro que representa o número de dias decorridos a partir de uma certa data, que é fixa.
daí operações de incremento de dias e essas coisas, são feitas com simples e naturais somas numéricas…
vc só precisa utilizar o formato dd/mm/aaaa(ou outro qq) na hora de exibir

dm_
fiquei de te mandar o codigo que fiz, porem o que encontrei nas brenhas do meu hd era uma versao desatualizada, que nao tinha ainda todos os metodos implementados… :sad: lamento muito…
aproveito o post pra concordar com a ideia de mmpaulo, voce pode considerar as datas num long que representa quantas horas tem aquela data a partir do dia do seu nascimento por exemplo…mas sempre se lembrando de considerar aquelas peculiaridades (28, 29, 30 ou 31 dias num mes, ano bissexto).

flw

Valeu pela força galera !
Vô tentar implementar das duas maneiras !

O professor pediu pra fazer mas nem cobrou… ^^
agora posso fazer sem urgências !
[]´s !