Amigos, estou tentando fazer um sisteminha de cadastro de clientes, onde possui um menu com escolhas como cadastrar, alterar, listar, remover e etc...
Quando cadastro 2 clientes na lista, e quando vou listar os clientes cadastrados, ele repete a lista com o ultimo cliente cadastrado...
ackage br.com.bruno.modelo.programa;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Scanner;
import br.com.bruno.modelo.Cliente;
public class TestaMain {
private static void menu() {
System.out.println(" -------------------------------------------------------------------");
System.out.println(" C A D A S T R O D E C L I E N T E S");
System.out.println(" 1 - CADASTRAR");
System.out.println(" 2 - ALTERAR");
System.out.println(" 3 - EXCLUIR");
System.out.println(" 4 - EXIBIR TODOS OS CLIENTES");
System.out.println(" -------------------------------------------------------------------");
}
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
Collection<Cliente> listaDeClientes = new ArrayList<Cliente>();
Cliente clientes = new Cliente();
int opcao;
do {
menu();
System.out.println("Digite a opção desejada: ");
opcao = entrada.nextInt();
switch (opcao) {
case 1:
System.out.println("Digite o nome do Cliente!");
clientes.setNome(entrada.next());
System.out.println("Endereço");
clientes.setEndereco(entrada.next());
System.out.println("CPF");
clientes.setCpf(entrada.next());
System.out.println("Nome da empresa");
clientes.setNomeEmpresa(entrada.next());
System.out.println("Digite a data de nascimento: ");
clientes.setDataNascimento(entrada.next());
System.out.println("Digite o salario");
clientes.setSalario(entrada.nextDouble());
listaDeClientes.add(clientes);
break;
case 2:
for (Cliente cliente : listaDeClientes) {
System.out.println(clientes);
}
default:
System.out.println("Opção Invalida!");
break;
}
} while (opcao != 0);
}
}
package br.com.bruno.modelo;
import java.util.Calendar;
public class Cliente {
private String nome;
private String endereco;
private String cpf;
private String dataNascimento;
private String nomeEmpresa;
private double salario;
@Override
public String toString() {
return "Nome: " + this.nome + "\nEndereço: " + this.endereco + "\nCPF: " + this.cpf + "\nData de nascimento: "
+ this.dataNascimento + "\nNome da Empresa: " + nomeEmpresa + "\nSalario: " + this.salario + "\n";
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public String getDataNascimento() {
return dataNascimento;
}
public void setDataNascimento(String string) {
this.dataNascimento = string;
}
public String getNomeEmpresa() {
return nomeEmpresa;
}
public void setNomeEmpresa(String nomeEmpresa) {
this.nomeEmpresa = nomeEmpresa;
}
public double getSalario() {
return salario;
}
public void setSalario(double salario) {
this.salario = salario;
}
}