Array

5 respostas
C

Estou criando a seguinte classe:

public class Cliente{
	private int id;
    private String nome;
    private int telefone;
    private String email;
    public int escolha;
    public int getId(){
    	return this.id;
    }
    public void setId(int id){
    	this.id = id;
    }
    public String getNome(){
    	return this.nome;
    }
    public void setNome(String nome){
    	this.nome = nome;
    }
    public int getTelefone(){
    	return this.telefone;
    }
    public void setTelefone(int telefone){
    	this.telefone = telefone;
    }
    public String getEmail(){
    	return this.email;
    }
    public void setEmail(String email){
    	this.email = email;
    }
    /**int escolha, int id, String nome, int telefone, String email*/
	public Cliente(){
		this.setId(id);
		this.setNome(nome);
		this.setTelefone(telefone);
		this.setEmail(email);
		}
	public void operacoes(){
		System.out.println("Para Cadastrar escolha 1, para alterar escolha 2 e para remover escolha 3 " + escolha); 
	    if (this.escolha == 1){
			this.cadastraCliente(id,nome,telefone,email);
		    System.out.println("Novo Cliente cadastrado:  " + this.getId() + ", " + this.getNome() + ", " + this.getTelefone() + ", " + this.getEmail());
		}
		else{
			if (this.escolha == 2){
				System.out.println("Cadastro do cliente " + this.getNome() + " sendo alterado");
				this.alterarCadastro(id,nome,telefone,email);
			}
			else{
				if (this.escolha == 3){
					System.out.println("Cadastro do cliente com identificação de número " + this.getId() + " sendo removido");
					this.removerCliente(id);
		        }
				else {
					System.out.println("Esta escolha não faz nada");
				}			
	        }
		}
	}
	public void cadastraCliente(int id,String nome,int telefone,String email){
	    this.setId(id);
	    this.setNome(nome);
	    this.setTelefone(telefone);
	    this.setEmail(email);
	    System.out.println("Novo Cliente cadastrado:  " + this.getId() + ", " + this.getNome() + ", " + this.getTelefone() + ", " + this.getEmail());
	}
	public void alterarCadastro(int id,String nome,int telefone,String email){
		if (this.getId() == id){
			System.out.println("Cadastro do cliente " + this.getNome() + " sendo alterado");
			this.setNome(nome);
			this.setTelefone(telefone);
			this.setEmail(email);
		}
		else {
			System.out.println("Cadastro não existe, portanto não pode ser alterado");
		}
	}
	public void removerCliente(int id){
		if (this.getId()== id){
			System.out.println("Cadastro do cliente com identificação de número " + this.getId() + " sendo removido");
			this.setNome(null);
			this.setTelefone(0);
			this.setEmail(null);
		}
		else{
			System.out.println("Cadastro não existe ");
		}		
	}
}

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos- Ratinho[/color][/size] :joia:
E preciso definir um array para implementar as funcionalidades das operações interagindo com o usuário através de um menu de opções (no console padrão )que permita a realização das seguinte operações: cadastro, alteração e remoção de cliente.
Se puderem me ajudar, agradeço.

5 Respostas

BrunoBastosPJ

olha… ve se eu entendi.
Você quer criar um objeto cliente a cada vez que você cadastra, podendo alterar esse objeto e também remove-lo. O que você pode fazer é criar um ArrayList que cada vez que você cadastrar um novo cliente você cria um novo objeto e adiciona ele no array list. Para alterar é só pegar ele atravez do método get, altera-lo e depois salvar na mesma posição e para remover é só saber em que posição ele está. Da uma olhada em ArrayList que você vai conseguir fazer. Use também um recurso java 5 na hora de declarar o ArrayList mostre para ele qual o tipo de objetos ele vai conter

ArrayList<Cliente> clientes = new ArrayList<Cliente>();
C

oi Bruno, tenho que cria um objeto do tipo array e esse objeto pode ser cadastrado, alterado ou removido dependendo da escolha do usuario.

BrunoBastosPJ

eu só não entendo como assim um objeto do tipo array… Na verdade se você quizer cadastrar mais de 1 cliente, sem gravar em arquivo ou bd você vai ter q criar um array. O problema de criar um array de clientes como esse

Cliente[] clientes = new Cliente[10]

é que você tem um número limitado, de 10, usando ArrayList você pode usar o método add que ele tem e adicionar quantos quizer e pode remover na posição que quizer sem precisar reordenar o array. Pegar o conceito de array list é bem simples você vai ter basicamente assim :

um arraylist como private na sua classe dentro do método cadastrar vc vai criar uma nova instancia de cliente

cliente = new Cliente();

ai final vai adicionnar ele ao arraylist

arraylist.add(cliente)

sempre que você cadastrar um cliente ele vai adicionar no array list

vai ser dificil explicar todos os metodos que um objeto ArrayList tem, você precisa dar uma olhada

http://java.sun.com/j2se/1.4.2/docs/api/java/util/ArrayList.html

C

Obrigado , agora eu entendi Bruno.

D

Pessoal estou iniciando o estudo em Java, como faço para compilar esta aplicação e gravar os valores digitados em um arquivo txt?

“Claucia”:
Estou criando a seguinte classe:

public class Cliente{
	private int id;
    private String nome;
    private int telefone;
    private String email;
    public int escolha;
    public int getId(){
    	return this.id;
    }
    public void setId(int id){
    	this.id = id;
    }
    public String getNome(){
    	return this.nome;
    }
    public void setNome(String nome){
    	this.nome = nome;
    }
    public int getTelefone(){
    	return this.telefone;
    }
    public void setTelefone(int telefone){
    	this.telefone = telefone;
    }
    public String getEmail(){
    	return this.email;
    }
    public void setEmail(String email){
    	this.email = email;
    }
    /**int escolha, int id, String nome, int telefone, String email*/
	public Cliente(){
		this.setId(id);
		this.setNome(nome);
		this.setTelefone(telefone);
		this.setEmail(email);
		}
	public void operacoes(){
		System.out.println("Para Cadastrar escolha 1, para alterar escolha 2 e para remover escolha 3 " + escolha); 
	    if (this.escolha == 1){
			this.cadastraCliente(id,nome,telefone,email);
		    System.out.println("Novo Cliente cadastrado:  " + this.getId() + ", " + this.getNome() + ", " + this.getTelefone() + ", " + this.getEmail());
		}
		else{
			if (this.escolha == 2){
				System.out.println("Cadastro do cliente " + this.getNome() + " sendo alterado");
				this.alterarCadastro(id,nome,telefone,email);
			}
			else{
				if (this.escolha == 3){
					System.out.println("Cadastro do cliente com identificação de número " + this.getId() + " sendo removido");
					this.removerCliente(id);
		        }
				else {
					System.out.println("Esta escolha não faz nada");
				}			
	        }
		}
	}
	public void cadastraCliente(int id,String nome,int telefone,String email){
	    this.setId(id);
	    this.setNome(nome);
	    this.setTelefone(telefone);
	    this.setEmail(email);
	    System.out.println("Novo Cliente cadastrado:  " + this.getId() + ", " + this.getNome() + ", " + this.getTelefone() + ", " + this.getEmail());
	}
	public void alterarCadastro(int id,String nome,int telefone,String email){
		if (this.getId() == id){
			System.out.println("Cadastro do cliente " + this.getNome() + " sendo alterado");
			this.setNome(nome);
			this.setTelefone(telefone);
			this.setEmail(email);
		}
		else {
			System.out.println("Cadastro não existe, portanto não pode ser alterado");
		}
	}
	public void removerCliente(int id){
		if (this.getId()== id){
			System.out.println("Cadastro do cliente com identificação de número " + this.getId() + " sendo removido");
			this.setNome(null);
			this.setTelefone(0);
			this.setEmail(null);
		}
		else{
			System.out.println("Cadastro não existe ");
		}		
	}
}

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos- Ratinho[/color][/size] :joia:
E preciso definir um array para implementar as funcionalidades das operações interagindo com o usuário através de um menu de opções (no console padrão )que permita a realização das seguinte operações: cadastro, alteração e remoção de cliente.
Se puderem me ajudar, agradeço.

Criado 23 de maio de 2006
Ultima resposta 17 de ago. de 2006
Respostas 5
Participantes 3