public static void main(String[] args) {
String nome;
int aux = 0;
ArrayList<Contato> contatos = new ArrayList();
Contato c = new Contato();
do {
Scanner in = new Scanner(System.in);
System.out.println("Cadastrar 1");
System.out.println("Sair 2");
aux = in.nextInt();
switch (aux) {
case 1:
Scanner in2 = new Scanner(System.in);
System.out.println("Digite um nome: ");
nome = in2.nextLine();
c.setNome(nome);
contatos.add(c);
break;
case 2://sair
break;
default:
System.out.println("invalido!");
break;
}
} while (aux != 2);
int i;
int n = contatos.size();
for (i = 0; i < n; i++) {
System.out.printf("Posição %d- %s\n", i, contatos.get(i));
}
}
ArrayList sobrescrevendo dados
4 Respostas
Apenas postar o código não ajuda. Contextualize.
Desculpe sou novato por aqui, meu problema é na hora de ler os dados salvados no arraylist, ele repete a ultima informação salva em todas as posições
Solucao aceita
1 like
Você só está criando um contato e a cada iteração do laço você está alterando os dados dele e adicionando novamente na lista.
O certo é criar um novo contato a cada iteração e não alterar os dados do mesmo.
Muito obrigado!
Criado 3 de dezembro de 2018
Ultima resposta 4 de dez. de 2018
Respostas 4
Participantes 3
Alura O que é Python? — um guia completo para iniciar nessa linguagem de programação Acesse agora o guia sobre Python e inicie sua jornada nessa linguagem de programação: o que é e para que serve, sua sintaxe e como iniciar nela!
Casa do Codigo Back-end Java: Microsservicos, Spring Boot e Kubernetes Por Eduardo Felipe Zambom Santana — Casa do Codigo