Pessoal, estou com dúvidas num exercício no qual eu tenho que adicionar o nome e telefone de um usuário numa ArrayList, eu tentei fazer, porém cada usuário que eu adiciono é adicionado na mesma lista, e eu gostaria de saber como eu poderia fazer para deixar apenas uma lista para cada usuário.
Output do meu programa:
1. Cadastrar Novo Contato
2. Pesquisar Contato
3. Excluir Contato
4. Sair
Sua opção: 1
Nome: João
Telefone: 99999-9999
E-mail: joao@gmail.com
Aniversário: 01/01/2020
[João, 99999-9999, joao@gmail.com, 01/01/2020]
1. Cadastrar Novo Contato
2. Pesquisar Contato
3. Excluir Contato
4. Sair
Sua opção: 1
Nome: Pedro
Telefone: 98888-8888
E-mail: pedro@gmail.com
Aniversário: 01/01/2000
**[João, 99999-9999, joao@gmail.com, 01/01/2020, Pedro, 98888-8888, pedro@gmail.com, 01/01/2000]**
Nessa última linha, ambos usuários estão na mesma lista, e eu gostaria de saber como eu poderia fazer uma lista para cada usuário:
[João, 99999-9999, joao@gmail.com, 01/01/2020]
[Pedro, 98888-8888, pedro@gmail.com, 01/01/2000]
Baseado em que esses valores serão enviados pelo usuário que estiver utilizando meu programa, ou seja, não posso criar 2 listas com os valores já “pré-definidos”.
Aqui estão as classes que eu estou utilizando
Contato.class
public class Contato {
// Atributos da classe Contato
private int id;
private String nome;
private String telefone;
private String email;
private String aniversario;
public int getID() {
return id;
}
public void setID(int id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getAniversario() {
return aniversario;
}
public void setAniversario(String aniversario) {
this.aniversario = aniversario;
}
public Contato(String nome, String telefone) {
this.id = 0;
this.nome = nome;
this.telefone = telefone;
this.email = "E-mail não informado";
this.aniversario = "Data de aniversário não informada";
}
}
Agenda.class
import java.util.Scanner;
import java.util.ArrayList;
public class Agenda{
public static void main(String args[]){
Scanner entrada = new Scanner(System.in);
String id, nome, telefone, email, aniversario;
ArrayList<String> contatos = new ArrayList<String>();
Agenda agenda = new Agenda();
while(true){
System.out.println("\n1. Cadastrar Novo Contato");
System.out.println("2. Pesquisar Contato");
System.out.println("3. Excluir Contato");
System.out.println("4. Sair");
System.out.print("Sua opção: ");
int opcao = Integer.parseInt(entrada.nextLine());
switch(opcao){
case 1:
System.out.print("Nome: ");
nome = entrada.nextLine();
System.out.print("Telefone: ");
telefone = entrada.nextLine();
System.out.print("E-mail: ");
email = entrada.nextLine();
System.out.print("Aniversário: ");
aniversario = entrada.nextLine();
contatos.add(nome);
contatos.add(telefone);
contatos.add(email);
contatos.add(aniversario);
System.out.print(contatos);
break;
}
}
}
}