Sei que essa mesma duvida ja foi esclarecida por aqui, mas mesmo assim, parece que não esta funcionando, poderiam me ajudar?
Postarei os codigos e informarei o que esta saindo como resposta.
Classe Empresa:
public class Empresa {
String nome;
String cnpj;
Funcionario[] empregados;
/* aqui o metodo verifica se o array esta vazio e quando estiver, ele
adiciona um funcionario.*/
void adiciona(Funcionario f) {
for (int i = 0; i < empregados.length; i++) {
if (empregados[i] == null) {
empregados[i] = f;
System.out.println("Empregado adicionado!");
} else {
System.out.println("Vaga cheia");
}
}
}
//aqui imprime a posicao do funcionario e o salario do mesmo
void mostraEmpregados() {
for (int i = 0; i < this.empregados.length; i++) {
if (this.empregados[i] != null) {
System.out.println("Empregado na posicao : " + i);
System.out.println("Salario do mesmo: " + empregados[i].salario);
}
}
}
}</code>
Classe TestaEmpresa
<code>
public class TestaEmpresa {
public static void main(String[] args) {
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[4];
Funcionario f1 = new Funcionario();
f1.salario = 1_000;
empresa.adiciona(f1);
Funcionario f2 = new Funcionario();
f2.salario = 2_000;
empresa.adiciona(f2);
Funcionario f3 = new Funcionario();
f3.salario = 3_000;
empresa.adiciona(f3);
empresa.mostraEmpregados();
Quando imprimo sai o seguinte resultado:
Empregado adicionado! Empregado adicionado! Empregado adicionado! Empregado adicionado! Vaga cheia Vaga cheia Vaga cheia Vaga cheia Vaga cheia Vaga cheia Vaga cheia Vaga cheia Empregado na posicao : 0 Salario do mesmo: 1000.0 Empregado na posicao : 1 Salario do mesmo: 1000.0 Empregado na posicao : 2 Salario do mesmo: 1000.0 Empregado na posicao : 3 Salario do mesmo: 1000.0
Eu estava querendo que saisse os salarios que inseri na classe TestaEmpresa, mas não esta saindo.
Poderiam me ajudar por favor?