É possível fazer uma ArrayList armazenar mais de uma variável?
Por exemplo, fizemos ela armazenar elementos do tipo String, e se eu quisesse armazenar todos os dados de um Cliente (nome, cpf, endereço), é possível armazenar tudo na mesma ArrayList?
É possível fazer uma ArrayList armazenar mais de uma variável?
Por exemplo, fizemos ela armazenar elementos do tipo String, e se eu quisesse armazenar todos os dados de um Cliente (nome, cpf, endereço), é possível armazenar tudo na mesma ArrayList?
Boa tarde Thiago, é só não especificar o tipo da lista:
List lista = new ArrayList<>();
lista.add(1);
lista.add("Teste");
lista.add(new Conta());
Boa Noite Thiago, creio que você esteja querendo armazenar um objeto inteiro, e isso é sim possível basta você definir o tipo da lista, conforme segue:
Considerando que você tenha uma classe Cliente
public class Cliente {
private Long id;
private String nome;
private String cpf;
private String endereco;
public Cliente(Long id, String nome, String cpf, String endereco) {
this.id = id;
this.nome = nome;
this.cpf = cpf;
this.endereco = endereco;
}
// Métodos getters and setters
}
Basta você criar uma lista de "Cliente" como segue:
public class Executar {
public static void main(String[] args) {
//Cria os Clientes
Cliente cliente1 = new Cliente(new Long(1), "Thiago", "000000", "Avenida Brasil");
Cliente cliente2 = new Cliente(new Long(2), "Rafael", "000001", "Avenida etc");
//Cria a lista de Clientes
List<Cliente> clientes = new ArrayList<Cliente>();
//Adiciona os clientes na lista
clientes.add(cliente1);
clientes.add(cliente2);
//Exibe os nomes dos clientes por um foreach
for (Cliente c : clientes) {
System.out.println("Cliente: " + c.getNome());
};
}
}
Oi Tiago é possível sim a ArrayList aceita qualquer coleção pode ser uma coleção de String ou uma coleção de objetos de uma classe qualquer;
Ex: Classe Cliente que você mesmo citou
Class Cliente{
String nome;
String cpf;
String endereço;
int idade;
public String toString(){
return nome+" - "+idade;
}
ArrayList <Cliente> clientes = new ArrayList<>();
Para impressão como sobrescrevi o método toString
System.out.println(clientes);
Me retornara todos os clientes com o nome e a idade ao lado.
Caso persista alguma dúvida a respeito desse exercício pode perguntar aqui mesmo ou se você não tiver mais nenhuma dúvida a respeito você pode marcar uma resposta como solução, finalizando assim esse tópico.Espero ter ajudado. Bons estudos.