Como trabalhar com Date em java?

Boa tarde pessoal!

Tendo o código abaixo, quero fazer igual com a data de nascimento de aluno. Quero que a classe Aluno tenha uma variável “dataNascimento” (usando o tipo de variável Date), com o seu set e get, e que seja possível adicionar data de nascimento de aluno na classe main.

Alguém para ajudar?

//
public class Aluno
{
private String nome;

 public void setNome(String nome) {
    this.nome = nome;
  }
 public String getNome() {
    return nome;
  }

}

public class MainProject {

public static void main(String[] args) {
ArrayList<Aluno> alunos = new ArrayList<>();    

Aluno aluno = new Aluno();
aluno.setNome(“Wiz Costa”);
alunos.add(aluno);

for(Aluno a : alunos)
{ 
   System.out.println("Nome do Aluno: "+ a.getNome() 
}

}

Arruma esse título. Títulos servem pra auxiliar quem está lendo os tópicos e pra quem vai procurar ajuda no futuro.


Cria uma String dataNascimento. Copia o getter e setter, e dps muda o nome…

1 curtida

Obrigado. Tens razão!

Consegui fazer isso, mas a agora quero que seja do tipo Date.

Ao invés de String usa Date

1 curtida

É verdade que com String fica mais fácil, só que, esta questão faz parte de um trabalho dado na escola onde o professor pediu para usar o tipo Date ao invés de String.

Boa noite amigo.

Pessoalmente não gosto de Date prefiro usar LocalDateTime ou LocalDate, mas como é trabalho de escola está ai.

public class MainProject{
    public static void main(String[] args) {
        try {
            List<Aluno> alunos = new ArrayList();
            SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");

            Aluno aluno = t.new Aluno();
            aluno.setNome("Wiz Costa");
            aluno.setDataNascimento(sdf.parse("01/01/2018"));
            alunos.add(aluno);

            for (Aluno a : alunos) {
                System.out.println("Nome do aluno: " + a.getNome());
                System.out.println("Data de nascimento do aluno: " + sdf.format(a.getDataNascimento()));
            }
        }catch(Exception ex){
            ex.printStackTrace();
        }
    }
}

public class Aluno {

    private String nome;
    private Date dataNascimento;

    public Aluno() {
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getNome() {
        return nome;
    }

    public Date getDataNascimento() {
        return dataNascimento;
    }

    public void setDataNascimento(Date dataNascimento) {
        this.dataNascimento = dataNascimento;
    }

}

Boa noite amigão!
Muito obrigado pela sua resposta, salvou uma parte importante do meu trabalho.
(Testes t = new Testes(); só estava a dar erro nesta linha de código. Felizmente consegui resolvê-lo.)
Abraço
NCC

Opa, que bom que ajudou.
Obrigado pelo aviso, eu removi a linha, ela só estava lá pq eu fiz tudo uma única classe que se chamava Teste, me desculpe por isso…hehehehehe :sweat_smile:

Não faz mal. Mais uma vez muito obrigado.