Boa apostila de arrayList para iniciantes

8 respostas
Laisa

Olá pessoal,

gostaria de saber se vcs indicam algum material de arrayList, algo facil
de entender meu problema é quando põe um arrayList dentro de outro

8 Respostas

B

Posta seu código aé!

ciczan

De que jeito vc tá tentando? O método addAll() não rolou?

Para duvidas específicas acho o Javadoc uma boa opção.

Laisa

Bem eu não gostaria de postar meu codigo para vcs arrumarem,
quero tentar fazer sozinha, só gostaria de indicações de materiais
ou exemplos de codigo que um arrayList contenha outros!

R

Laisa:
Bem eu não gostaria de postar meu codigo para vcs arrumarem,
quero tentar fazer sozinha, só gostaria de indicações de materiais
ou exemplos de codigo que um arrayList contenha outros!

Boa filosofia.

Dá uma olhada aqui para List.

E para outras estruturas, aqui

[]´s

R

Se bem que esses aqui são mais indicados pra entender a classe:

http://www.javafaq.nu/java-example-code-89.html
http://www.ime.uerj.br/~progerio/disciplina/programacao_de_computadores_II/PCII_Colecoes.html

[]´s

Laisa

Valeu!!

obrigada a todos, vcs são muito queridos! =)

ramilani12

Uma boa dica:

Hello Collections

ViniGodoy

Muitas vezes, ao invés de fazer um list dentro do outro, temos uma classe que contém uma lista, e outra lista que contém elementos dessa classe.

Por exemplo:
Vamos supor que um chefe tirano queira controlar os deméritos que seus funcionários tem...

Então, teríamos primeiro a classe para descrever o demérito do funcionário.
public class Demerito {
   private String descricao;

   private Demerito(String descricao) { this.descricao = descricao; }
   public String getDescricao {return descricao;}
}

Depois, uma classe para descrever o funcionário, que teria uma lista de deméritos.

public class Funcionario {
   private List<Demerito> demeritos = new ArrayList<Demerito>();
   private String nome;

   public Funcionario(String nome) {this.nome = nome;}
   public String getNome {return nome;}
   public List<Demerito> getDemeritos() {return Collections.unmodifiableList(demeritos); }
   public void adicionarDemerito(Demerito d) {demeritos.add(d);}
   public void removeDemerito(Demerito d) {demeritos.remove(d); }
}

So far, so good. Como você deve saber, podemos fazer:

Funcionario vinicius = new Funcionario("Vinicius");
vinicius.adicionarDemerito(new Demerito("Não veio trabalhar no domingo");
Mas... e se quiséssemos uma lista de funcionários?

Simples, poderíamos ter a classe:

public class Empregados {
    public List<Funcionario> funcionarios = new ArrayList<Funcionario>();
    
    public List<Funcionario> getFuncionarios() {return Collections.unmodifiableList(funcionarios); }
    public void adicionarFuncionario(Funcionario func) { funcionarios.add(func);}
    public void removerFuncionario(Funcionario func) { funcionarios.remove(func);}
}

Note que a classe Empregados é uma lista de funcionários, que por sua vez contém uma lista de deméritos.

Poderíamos fazer:

Funcionario vinicius = new Funcionario("Vinicius");
vinicius.adicionarDemerito(new Demerito("Não veio trabalhar no domingo");

Funcionario laisa = new Funcionario("Laisa");
laisa.adicionarDemerito(new Demerito("Trabalha só 10 horas por dia");
laisa.adicionarDemerito(new Demerito("Gasta mais de 15 min no almoço");

Empregados e = new Empregados();
e.adicionarFuncionario(vinicius);
e.adicionarFuncionario(laisa);

Agora podemos até listar todos os deméritos de todos os empregados:

for (Funcionario func : e) {
   System.out.println("Deméritos de " + func.getNome());
   for (Demerito dem : func.getDemeritos()) {
       System.out.println("  " + dem.getDescricao());
   }
}
Criado 21 de junho de 2007
Ultima resposta 21 de jun. de 2007
Respostas 8
Participantes 6