2
respostas

error: ';' expected

Olá, inseri o código conforme orientado no exercício.

class TestaEmpresa {
    public static void main (String[] args) {
        Empresa empresa = new Empresa();
        empresa.empregados = new Funcionario[10];
        Funcionario f = null;

        Funcionario f1 = new Funcionario();
        f1.salario = 1000;
        empresa.adiciona(f1);

        for (int i = 0; i < 5; i++){
            Funcionario f = new Funcionario();
            f.salario = 1000 + i*1000;
            empresa.adiciona (f);

        }
        empresa.empregados[0].nome = "Humberto";
        empresa.empregados[0].RG = "987654321";
        empresa.empregados[0].departamento = "seção de inteligência";
        empresa.empregados[0].dataDeEntradaNoBanco.preencheData(01,01,2018);


            for (int i = 0; i < empresa.empregados.length; i++) {

                empresa.empregados[i].mostraTodasAsInformacoes();
            }

        boolean contem(Funcionario f) {
            for (int i = 0; i < this.livre; i++){
                if (f == this.empregados[i]) {
                    return true;
                }
            }
            return false;
        }

    }
}

mas quando eu tento compilar tenho o seguinte erro:

Funcionario.java:66: error: ';' expected boolean contem(Funcionario f) { ^ Funcionario.java:66: error: ';' expected boolean contem(Funcionario f) { ^ 2 errors

2 respostas

Acredito que você tenha entendido errado o exercício. O método contem deve ver se um funcionário está nessa empresa.

Algumas dicas:

1- Esse método deve ficar na classe Empresa.

2- Você deve colocar o public antes do método.

3- Você pode simplificar este método utilizado um for each. Um tipo especial de for. Não sei se foi apresentado no curso. Ficaria assim:

for (Funcionario empregado : this.empregados){
        if (f == empregado) {
            return true;
        }
    }

Faltou você fechar o método main(). Basta inserir uma chave } antes do método contem(). Quanto à lógica do exercício, não posso opinar. Me ative ao erro de compilação.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software