Criando sistema de cadastro de funcionários

Meu grupo está enfrentando problemas ao tentarmos criar um sistema de cadastros.
Somos iniciantes em Java, então está bem complicado.
Vamos lá:

  • Criamos o Menu onde nos dá 4 opções que são: I- cadastrar II- atualizar dados III- Remover um usuário IV- Pesquisar funcionário.
  • A Primeira opção seria a de cadastros, que creio eu que o mais lógico seria usar arraylist, tentamos isso, mas na hora de pesquisar pelo funcionário não conseguimos fazer a pesquisa, não conseguimos fazer um método que nos ajudasse nisso.
    Alguém poderia nos ajudar?

Vc vai usar o arraylist como??
Armazenar o retorno do banco de dados??

Você tem que postar o que fez para tentarmos ajudar, também se você pesquisar no google por como usar arraylist em java vai vir muita coisa pronta explicando. se você está fazendo um arrayList da classe funcionário é só você fazer um for e procurar pelo nome do funcionário ex:

ArrayList lista=new ArrayList();
Funcionario funcionario = new Funcionario();
funcionario.nome = “Joao”;
funcionario.endereco = “Avenida Principal 286”;
funcionario.telefone="(99)99999-9999";
funcionario.cargo = “Motorista”;
lista.add(funcionario);
String nomeAPesquisar = “Joao”;
for(int i=0;i<lista.size();i++){
if(lista.get(i).nome.equals(nomeAPesquisar)){
System.out.println(lista.get(i).nome);
System.out.println(lista.get(i).endereco);
System.out.println(lista.get(i).telefone);
System.out.println(lista.get(i).cargo);
}
}

1 curtida

Evite chamar repetidamente o mesmo método com mesmos parâmetros, utilize variáveis locais, fica mais limpo e mais rápido:

String nomeAPesquisar = “Joao”;
for (int i = 0; i < lista.size(); i++) {
    Funcionario funcionario = lista.get(i);
    if (nomeAPesquisar.equals(funcionario.nome)) {
        System.out.println(funcionario.nome);
        System.out.println(funcionario.endereco);
        System.out.println(funcionario.telefone);
        System.out.println(funcionario.cargo);
    }
}

Ou use um enhanced for:

String nomeAPesquisar = “Joao”;
for (Funcionario funcionario : lista) {
    if (nomeAPesquisar.equals(funcionario.nome)) {
        System.out.println(funcionario.nome);
        System.out.println(funcionario.endereco);
        System.out.println(funcionario.telefone);
        System.out.println(funcionario.cargo);
    }
}

Todos me ajudaram bastante, muito obrigado!

Empacamos em outra coisa, estamos tentando atualizar os dados.
Vou adicionar a foto do que a gente já fez.

New photo by Anna Ferreira

Pôxa, é bem melhor postar o código do que imagens.

Você não está atualizando, está adicionando mais dados na list vetorCliente, você está usando o comando add e ainda fazendo uma nova instância para Cliente.
Para atualizar o valor você tem que achar a posição do nome no vetor usando um for e depois atualizar os valores nessa posição.