Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

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

Pessoal aqui o retorne e tudo null porque?

package exer1;

public class Exer1 {

    public static void main(String[] args) {
    Empresa Dados = new Empresa();
        Dados.empregados = new Empresa[3];

        Dados.empregados[0] = new Empresa();
        Dados.empregados[0].nomeEmpregados = "Luiz Alfredo";
        Dados.empregados[0].cnpj = "4875947";

        Dados.empregados[1] = new Empresa();
        Dados.empregados[1].nomeEmpregados = "Sebastião Souza";
        Dados.empregados[1].cnpj = "487594789";

        Dados.imprimeDadosEmpregados();
}
package exer1;

public class Empresa {
        String nomeEmpregados;
        Empresa[] empregados;
        String cnpj;

        void imprimeDadosEmpregados(){
            for (Empresa empregados : this.empregados) {
                if(empregados == null) continue;
                System.out.println(nomeEmpregados);
                System.out.println(cnpj);
            }
        }  
}
2 respostas
solução!

Oi Marcos,

vamos dar uma olhada no seu imprimeDadosEmpregados:

public class Empresa {
    String nomeEmpregados;
    Empresa[] empregados;
    String cnpj;

    void imprimeDadosEmpregados(){
        for (Empresa empregados : this.empregados) {
            if(empregados == null) continue;
            System.out.println(nomeEmpregados);
            System.out.println(cnpj);
        }
    }  
}

Você fez o for certinho, porém no println você pede para imprimir o nomeEmpregados e o cnpj de quem?

Como sua classe Empresa tem um nomeEmpregados e um cnpj, do jeito que você fez o println são esses atributos que você está imprimindo em vez de imprimir o nomeEmpregados e cnpj dos objetos do seu array.

Então, para arrumar isso, basta dizer que você quer o nomeEmpregados e o cnpj de cada objeto do seu array empregados:

void imprimeDadosEmpregados(){
    for (Empresa empregados : this.empregados) {
        if(empregados == null) continue;
        System.out.println(empregados.nomeEmpregados);
        System.out.println(empregados.cnpj);
    }
}

Veja se isso resolve seu problema.

Abraço e bons estudos.

Felipe é isso ai blz mano!!!