Pesquisar, Consultar Dados ja inseridos (Java)

6 respostas
E

Seguinte tenho que criar uma classe Professor com os atributos, nome, titulo, horas trabalhadas, e codigo, até aki blz

public class Professor{
private int codigo;
private float horas;
private String nome, titulo;}

Eu uso um switch case para cadastrar ou pesquisar os que ja foram cadstrados, (usando somete a memoria, sem arq, ou BD)
Cadastrar é tranquilo
____________________________________

Professor cad = new Professor();
int op = (Integer.parseInt(JOptionPane.showInputDialog("Digite a Opção Desejada:\n\t 1-INSERIR PROFESOR\n\t 2-PESQUISAR PROFESSOR\n\t 0-SAIR"));
					
	do
	{												
	switch(op)	{
	case 0: break;
	case 1: {cad.cadastro();util.Valor+=1;break;}
	case 2: {cad.pesquisa();	break;}
	default:JOptionPane.showMessageDialog(null, "Opção Invalida");
		}
	}while (op!=0);
______________________________________________________________
public void cadastro()
{
	int codigo  = util.Valor; // classe contador que atribui o codigo do professor 
	String nome = JOptionPane.showInputDialog("Codigo: %d \t Digite o Nome",codigo); //
	do{
	String titulo = JOptionPane.showInputDialog("Digite o Titulo\n\t E - Especialista\n\t M - Mestrado\n\t D - Doutorado");
	}while (titulo.equals("E")||titulo.equals("M")||titulo.equals("D")); // só cadastra usando uma das letras
	float horas = (Float.parseFloat(JOptionPane.showInputDialog("Digite as Horas Trabalhadas:"))); 
}

Cada vez que escolher cadastro no meu Switch Case vai cadastrar um novo prof ou vai sobrescrever o anterior.
Como fazer a pesquisa em professores ja cadastrados??
Utilizo um vetor para cadastrar??

Não achei nada assim nas buscas no forum.

6 Respostas

A

Partindo do principio que você já tem a lista (Vector) na sua classe é só recuperar pelo código.

public Professor pesquisar(int codigo ){
    Professor prof = null;
    Iterator it = vector.iterator();
    while(it.hasNext()){
        prof = it.next();
        if(prof.getCodigo() == codigo){
            return prof;
        }
    }
    return null;
}
celso.martins

Cara, onde você está "cadastrando" isso? Não estou vendo nenhum BD, nenhum FF, nenhum array, list ou coisa do tipo.

Obs: utilize a tag [code].

E

É essa a minha duvida como cadastrar mais de um Prof?

Professor cad[x]=new Professor();

isso ta errado num tá??
Eu tenho a classe, quero usá-la pra cadastrar varios Professores.

Dei uma procurada, mas só acho vetor simples, que faz referencia a uma variavél, não a uma classe.

J

cria um vetor de tamanho do número de professores que queres cadastrar,
depois usa um laço para preencher o vetor, “cad[x].codigo = …”.

celso.martins

Ou use uma Collection da vida, ou um FF, ou se puder, um SGDB.

E

Blz ja dei uma olhada aki!! :wink: :idea:
Depois posto o codigo pronto pra vcs verem!

VLW a ajuda :smiley:

Criado 14 de maio de 2009
Ultima resposta 14 de mai. de 2009
Respostas 6
Participantes 4