1
resposta

Duvida

Aula 4- Atividade 05. Não to conseguindo desenvolver essa questão. Código abaixo.

class Funcionario2 {
    String nome;
    String depto;
    double salario;
    Data datEntradaBanco;
    String rg;
}
class Data {
    int dia;
    int mes;
    int ano;
}
class Empresa {
    String nomeEmpresa;
    String cnpj;
    Funcionario2[] funcionarios;
    int ponteiro = 0; 

    void mostraEmpresa() {
        System.out.println(this.nomeEmpresa);
        System.out.println(this.cnpj);
    }


    void adicionar(Funcionario2 f) {
        this.funcionarios[ponteiro] = f; 
        ponteiro++; 
    }

    void mostraDadosFunc() {
        for (int i = 0; i < this.funcionarios.length; i++) {
            Funcionario2 func = this.funcionarios[i];
            if (func == null)
                continue;
            System.out.println("Nome: " + func.nome);
            System.out.println("Depto: " + func.depto);
            System.out.println("Salario:" + func.salario);
            System.out.println("RG: " + func.rg);
        }
    }
}
class TesteFuncionario {
    public static void main(String[] args) {
        Empresa emp = new Empresa();
        emp.nomeEmpresa = "Softwork";
        emp.cnpj = "12345678901";
        emp.mostraEmpresa();

        emp.funcionarios = new Funcionario2[10];



        Funcionario2 f1 = new Funcionario2();
        f1.nome        = "Livia";
        f1.depto    = "Informatica";
        f1.salario    = 1.000;
        f1.rg         = "121236";
        f1.datEntradaBanco         = new Data();
        f1.datEntradaBanco.dia    = 4;
        f1.datEntradaBanco.mes    = 1;
        f1.datEntradaBanco.ano    = 2017;

        emp.adicionar(f1); 

        Funcionario2 f2 = new Funcionario2();
        f2.nome        = "Ana";
        f2.depto    = "Medica";
        f2.salario    = 10.000;
        f2.rg        = "9777777";
        f2.datEntradaBanco        = new Data();
        f2.datEntradaBanco.dia    = 7;
        f2.datEntradaBanco.mes    = 8;
        f2.datEntradaBanco.ano    = 2013;

        emp.adicionar(f2);


        emp.mostraDadosFunc();
    }
}
1 resposta

Ola Livia!

Enunciado da 5ª questao:

Vamos passar a mostrar as informações de todos os empregados da empresa. Crie um método chamado mostraTodasAsInformacoes() que executa um laço pelos elementos da array e imprime todos eles utilizando o método mostra().

Blz?

A Classe Empresa tem um array de Funcionario2.

Precisamos iterar nesse array de Funcionario2, item a item e exibir todos os dados de cada item iterado.

Dentro da Classe Empresa, criar o metodo: void mostraTodasAsInformacoes()

Olha uma possibilidade de resolução:

void mostraTodasAsInformacoes() {
    for (int i = 0; i < this.funcionarios.length; i++) {
        System.out.println("Funcionário na posição: " + i);
        this.funcionarios[i].mostraDadosFunc();
    }
}

Ajudei? :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