Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida no Ex. 6 da Aula 4 - Arrays

Ola pessoal, tudo bem?

Nao consigo fazer que o método boolean rode de jeito nenhum, o que está faltando ou tem algo errado? O codigo roda perfeito mas não mostra se é true ou false, não estou entendendo essa parte.

Segue o Codigo:

class Empresa {
    String Nome;
    String Cnpj;
    Funcionario [] empregados;
    int Livre = 0;

    void adiciona(Funcionario f){
        this.empregados[this.Livre] = f;
        this.Livre++;    
    }
    void mostraempregados(){
        for (int i = 0; i < this.Livre; i++){
            System.out.println("Posicao do empregado: " +i);
            System.out.println("Salario: " +this.empregados[i].Salario);
        }
    }
    void mostratodasasinformacoes(){
        for (int i = 0; i < this.Livre; i++){
            System.out.println("\nPosicao do empregado: " +i);
            this.empregados[i].Mostra();
        }
    }
    boolean contem(Funcionario f){
        for (int i = 0; i < this.Livre; i++){
            if(f == this.empregados[i]){
                return true;
            }
        }
        return false;
    }
}
class TestaEmpresa{
    public static void main (String[] args){
        Empresa empresa = new Empresa();
        empresa.empregados = new Funcionario[10];

        Funcionario f2 = new Funcionario();
        f2.Nome = "Julio";
        f2.Salario = 1000;
        f2.RG = "123456789";
        f2.OndeTrabalha = "Sony";
        f2.datadeentrada = new Data();
        f2.datadeentrada.preencherdata(1, 6, 2010);
        empresa.adiciona(f2);

        Funcionario f3 = new Funcionario();
        f3.Nome = "Iury";
        f3.Salario = 1700;
        f3.RG = "123456787";
        f3.OndeTrabalha = "Sony";
        f3.datadeentrada = new Data();
        f3.datadeentrada.preencherdata(22, 3, 2000);
        empresa.adiciona(f3);

        Funcionario f4 = new Funcionario();
        f4.Nome = "Roberto";
        f4.Salario = 2000;
        f4.RG = "123456788";
        f4.OndeTrabalha = "Sony";
        f4.datadeentrada = new Data();
        f4.datadeentrada.preencherdata(1, 6, 1999);
        empresa.adiciona(f4);

        empresa.mostratodasasinformacoes();
        empresa.contem(f4);
    }
}
1 resposta
solução!

Iury para fazer com que seja impresso o resultado do boolean chame a função dentro de um sysout:

System.out.println(empresa.contem(f4));

Aqui será impresso o resultado do método.

Espero ter ajudado.