Ajuda - Classe data

2 respostas
uallace

Olá a todos. Bom, preciso de uma ajuda com o seguinte problema:

Escreva uma classe cuja instância (objeto) represente uma data(dia,mês,ano). Esta classe deverá dispor dos seguintes métodos:

VERIFICA- verifica se a data é válida- dia (1 a 31), mês (1 a 12), ano (1900 a 2010), retornando verdadeiro ou falso;

COMPARA - recebe como parâmetro um objeto representando uma outra data e retorna:

0 se as datas forem iguais;

1 se a data corrente for mais recente que a do parâmetro;

-1 se a data do parâmetro for menos recente que a corrente.

DIA ? retorna o dia da data;

MÊS ? retorna o mês da data;

MÊS_EXTENSO ? retorna o mês da data corrente por extenso;

ANO ? retorna o ano da data;

Bom, abaixo tem o que eu fiz, faltando apenas o método pra comparar. Por favor, me ajudem e verifiquem se estar certo e de acordo com o exercício proposto. Valeu.

public class Data {
int dia;
int mes;
int ano;
String data;

public boolean Verifica(int nDia, int nMes, int nAno){
    dia = nDia;
    mes = nMes;
    ano = nAno;
    boolean valida = false;
    if ((ano>=1900)&&(ano<=2010)){
        if((mes>=1)&&(mes<=12)){
            if((dia>=1)&&(dia<=31)){
                valida = true;
            }
        }
    }
   return valida; 
}

public int Dia(){
    return dia;
}

public int Mes(){
    return mes;
}

public String Mes_Extenso(){
    String mens = null;
    switch(mes){
        case(1):mens = "Janeiro";
                        break;
        case(2):mens = "Fevereiro";
                        break;
        case(3):mens = "Março";
                        break;
        case(4):mens = "Abril";
                        break;
        case(5):mens = "Maio";
                        break;
        case(6):mens = "Junho";
                        break;
        case(7):mens = "Julho";
                        break;
        case(8):mens = "Agosto";
                        break;
        case(9):mens = "Setembro";
                        break;
        case(10):mens = "Outubro";
                        break;
        case(11):mens = "Novembro";
                        break;
        case(12):mens = "Dezembro";
    }
    return mens;
}
public int Ano(){
    return ano;
}
}

2 Respostas

marcosvidolin

Olá…

Essa época do ano o GUJ fica cheio de post…hehehe… normal.
Cara tem uma classe que pode te ajudar bastante nesse exercício.
A classe é a Calendar. Da uma olhada na API dela.

Ela possui alguns métodos e constantes que podem servir pra você:
dica: before() ou after().

Qualquer duvida posta aeee!
[]'s

uallace

Ae, obrigado!!!Bom e meu exemplo acima???Ta bom até onde fiz???E sobre este metodo calendar???Pode me dar um exemplo???Obrigado por responder.

Criado 6 de abril de 2010
Ultima resposta 6 de abr. de 2010
Respostas 2
Participantes 2