13 de fev. de 2014

Como criar ArrayList de objetos em Java

Nesse tutorial estaremos aprendendo como salvar objetos dentro de um ArrayList. Mostraremos em outro tutorial, que você pode criar algo que simula um banco de dados e salvar esses Arrays. 
Veja abaixo como criar o ArrayList, salvar os objetos e obter determinados valores:
Instanciando o objeto ArrayList:
ArrayList<Agenda> listaContatos = new ArrayList<Agenda>();

Agenda = nome da classe que terão seus objetos guardados.


Adicionando um objeto ao ArrayList:
Agenda novoContato = new Agenda();
listaContatos.add(novoContato);

Obtendo um valor:
listaContatos.get(i).getNome()
i = posição do objeto no Array;
getNome() = método da classe Agenda que retorna uma String com o nome;

Agora mostraremos um exemplo prático de uma agenda de contatos, na qual é possível adicionar, remover, pesquisar e imprimir os contatos.


  //CLASSE AGENDA
public class Agenda {
    public String nome;
    public String endereco;
    public int telefone;

    public Agenda(String nome, String endereco, int telefone) {  //CONSTRUTOR DA CLASSE
        this.nome = nome;
        this.endereco = endereco;
        this.telefone = telefone;
    }

    public String getEndereco() {
        return endereco;
    }

    public void setEndereco(String endereco) {
        this.endereco = endereco;
    }

    public int getTelefone() {
        return telefone;
    }

    public void setTelefone(int telefone) {
        this.telefone = telefone;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

//CLASSE PRINCIPAL
 public class Tela {
    public static void main(String[] args) {

        Scanner entrada = new Scanner(System.in);
        ArrayList<Agenda> listaContatos = new ArrayList<Agenda>();  //CRIAÇÃO DO ARRAY

        String a = null;
        while (a == a) {
            System.out.println("1- adicionar");
            System.out.println("2- mostrar");
            System.out.println("3- procurar");
            System.out.println("4- excluir");
            int aux = entrada.nextInt();
            switch (aux) {
                case 1:
                    Agenda novoContato = new Agenda("", "", 0);
                   
                    System.out.println("Digite o nome do contato");
                    String nome = entrada.nextLine();
                    novoContato.setNome(nome);

                    System.out.println("Digite o endereço do contato");
                    String endereco = entrada.nextLine();
                    novoContato.setEndereco(endereco);

                    System.out.println("Digite o telefone do contato");
                    int telefone = entrada.nextInt();
                    novoContato.setTelefone(telefone);

                    listaContatos.add(novoContato);


                    break;

                case 2:

                    for (int i = 0; i < listaContatos.size(); i++) {
                        System.out.println("Nome: " + listaContatos.get(i).getNome());
                        System.out.println("Telefone: " + listaContatos.get(i).getTelefone());
                        System.out.println("Endereço: " + listaContatos.get(i).getEndereco());
                        System.out.println("");
                    }

                    break;

                case 3:
                    System.out.println("Digite o nome para a procura");
                    String nomeProcura = entrada.nextLine();
                    for (int i = 0; i < listaContatos.size(); i++) {
                        if (listaContatos.get(i).getNome().equals(nomeProcura)) {
                            System.out.println("Nome: " + listaContatos.get(i).getNome());
                            System.out.println("Telefone: " + listaContatos.get(i).getTelefone());
                            System.out.println("Endereço: " + listaContatos.get(i).getEndereco());
                            System.out.println("");
                        }
                    }
                    break;
                case 4:

                    System.out.println("Digite o nome para a procura");
                    String excluir = entrada.nextLine();
                    for (int i = 0; i < listaContatos.size(); i++) {
                        if (listaContatos.get(i).getNome().equals(excluir));
                        listaContatos.remove(i);
                    }
                    break;
                default:
                    break;

            }
        }

    }

Nenhum comentário:

Postar um comentário