[Resolvido]Criando Agenda

4 respostas
O

[size=18]Galera to tentando fazer uma agenda que contenha os campos Nome, celular e telefone. Utilizando dos classes mas to com problemas, no código que vou passar aqui
vai está só com um método adicionar que está dando erro… [/size]

Classe1:

public class Exerc5 {
	
	private String nome,celular,cidade;

	public String getNome() {
		return nome;
	}

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

	public String getCelular() {
		return celular;
	}

	public void setCelular(String celular) {
		this.celular = celular;
	}

	public String getCidade() {
		return cidade;
	}

	public void setCidade(String cidade) {
		this.cidade = cidade;
	}


	
}

Classe 2:

import java.util.ArrayList;
import javax.swing.JOptionPane;

public class Exerc_5_teste {

	/**
	 * @param args
	 */
	
	ArrayList<Exerc5> contato;
	
	public Exerc_5_teste()
	{
		
	}

	public void adicionar()
	{
		String nome = JOptionPane.showInputDialog(null, "Digite o Nome:");
		String celular = JOptionPane.showInputDialog(null, "Digite o Celular:");
		String cidade = JOptionPane.showInputDialog(null, "Digite o Cidade:");
		
		Exerc5 myContato = new Exerc5();
		myContato.setNome(nome);
		myContato.setCelular(celular);
		myContato.setCidade(cidade);
		
		contato.add(myContato);
	}
	public void remover()
	{
		
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub	
	
		Exerc_5_teste myTeste = new Exerc_5_teste();
		
		myTeste.adicionar();
		
		Exerc5 myEx = new Exerc5();
		
		System.out.println(myEx.getNome());
	}

}

Espero Dicas galera…! :slight_smile:

4 Respostas

romarcio

Primeiro você deve inicializar a sua lista para depois adicionar os elementos nela.

...
contato = new ArrayList<Exerc5>();

contato.add(myContato);

Depois faça assim, para recuperar os valores da lista.

myTeste.adicionar();   

//Exerc5 myEx = new Exerc5();          
        
for (int i = 0; i < contato.size(); i++) {
     System.out.println(contato.get(i).getNome());
     System.out.println(contato.get(i).getCelular());
     ...
}
O

[size=18]Cara entendedi as modificações mas não ta recuperando os valores sabem porque?[/size]

CLASSE 1:

public class Exerc5 {
	
	private String nome,celular,cidade;

	public String getNome() {
		return nome;
	}

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

	public String getCelular() {
		return celular;
	}

	public void setCelular(String celular) {
		this.celular = celular;
	}

	public String getCidade() {
		return cidade;
	}

	public void setCidade(String cidade) {
		this.cidade = cidade;
	}


	
}

Classe 2

import java.util.ArrayList;
import javax.swing.JOptionPane;

public class Exerc_5_teste {

	/**
	 * @param args
	 */
	
	static ArrayList<Exerc5> contato;
	
	public Exerc_5_teste()
	{
		
	}

	public void adicionar()
	{
		String nome = JOptionPane.showInputDialog(null, "Digite o Nome:");
		String celular = JOptionPane.showInputDialog(null, "Digite o Celular:");
		String cidade = JOptionPane.showInputDialog(null, "Digite o Cidade:");
		
		Exerc5 myContato = new Exerc5();
		myContato.setNome(nome);
		myContato.setCelular(celular);
		myContato.setCidade(cidade);
		
		this.contato = new ArrayList<Exerc5>();
		
		contato.add(myContato);
	}
	public void remover()
	{
		
	}
	public void listarContatos(){
		contato = new ArrayList<Exerc5>();
		
		for (int i = 0; i < contato.size(); i++) {  
		     JOptionPane.showMessageDialog(null, contato.get(i).getNome());  
		     JOptionPane.showMessageDialog(null, contato.get(i).getCelular());
		     JOptionPane.showMessageDialog(null, contato.get(i).getCidade());
		    
		}  
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub	
	
		Exerc_5_teste myTeste = new Exerc_5_teste();
		
		myTeste.adicionar();
		
		myTeste.listarContatos();
		
		
	}

}
romarcio
public void listarContatos(){  
        //contato = new ArrayList&lt;Exerc5&gt;();  se fizer isso, você vai limpar a lista e seus dados serão perdidos. Quando cria uma instancia, cria um novo objeto, assim, perde o antigo.
          
        for (int i = 0; i &lt; contato.size(); i++) {    
             JOptionPane.showMessageDialog(null, contato.get(i).getNome());    
             JOptionPane.showMessageDialog(null, contato.get(i).getCelular());  
             JOptionPane.showMessageDialog(null, contato.get(i).getCidade());  
              
        }    
    }
O

Vlw galera deu certo! Obrigadão pela ajuda! :DD

Criado 24 de abril de 2013
Ultima resposta 29 de abr. de 2013
Respostas 4
Participantes 2