1
resposta

Dúvida no método mostraTodasAsInformacoes

Galera nao sei como chamar o método mostra() dentro do método mostraTodasAsinformaçoes

class Funcionario { String nomeFun; double salFun;}

class Empresa { int cnpjEmp; String nomeEmp; int livre=0; Funcionario[] func;

void adiciona(Funcionario f) { this.func[this.livre] = f; this.livre++; }

void mostra(){ for(int i=0;i<this.func.length ;i++){ Funcionario funcio = this.func[i]; if (funcio==null) continue; System.out.println(this.func[i].nomeFun); System.out.println(this.func[i].salFun); }}

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

} }}

class TesteArray{ public static void main(String[] args){

Empresa empresa1 = new Empresa(); //empresa1.cnpjEmp = 451212145; //empresa1.nomeEmp = "FlexTronics"; empresa1.func = new Funcionario[10];

Funcionario f1 = new Funcionario(); f1.nomeFun = "Natan Boschini"; f1.salFun = 3200.0; empresa1.adiciona(f1);

Funcionario f2 = new Funcionario(); f2.nomeFun = "Marcelo Gadioli"; f2.salFun = 4200.0; empresa1.adiciona(f2);

} } } }

1 resposta

É porque o seu o mostra e mostraTodos estão todos estão iguais. Faz o mostra receber um indice, aí vc pode invocar esse mostra a partir do mostraTodos passando o indice como argumento.