Bom dia a todos!!
pessoal estou com uma probleminha, bom vou esplicar do inicio.
Construi uma classe funcionario, os atributos: nome, salario, rg etc. compilei e testei deu tudo serto.
criei uma classe empresa com os atributos nome cnpj , um Array de Funcionatio e o metodo adicionar exemplo:
class Empresa{
String nome;
String cnpj;
Funcionario[] funcionarios;
void adicionar(Funcionario f, int posição){
this.funcionarios[posição] = f;
}
Ate aqui tudo bem, criei uma classe para teste chamada diretorio exemplo:
class Diretorio{
public Static void main(String args[]){
Empresa empresa = new Empresa();
empresa.funcionarios = new Funcionario[10];
Funcionario fun = new Funcionario();
fun.salario = 1000;
empresa.adicionar(fun, 3);
for(int i = 0;i<funcionarios.Length;i++)
System.out.println(empresa.funcionarios[i]);
}
eu consigui compilar e executar, mas o problema e que o metodo adicionar não tá recebendo o valor do parametro f >>>> void adicionar(Funcionario f, int posição)
na tela aparece da seguinte forma
null
null
null
Funcionarioss12351 >>> mais ou menos assim. A posição ele recebeu mais o salario de 1000 não por que
null
null
null
null
null
null
Muito obrigado.
Sempre coloque seus códigos entre as tags CODE!
http://www.guj.com.br/posts/list/50115.java <<<<<<<<<<<<<<<<<
[code]class Diretorio {
public static void main(String[] args) {
Empresa empresa = new Empresa();
empresa.funcionarios = new Funcionario[10];
Funcionario fun = new Funcionario();
fun.salario = 1000;
empresa.adicionar(fun, 3);
for(int i = 0;i<empresa.funcionarios.length;i++) //Você está acessando uma variável de Empresa aqui. Precisa usar o objeto para acessar.
if (empresa.funcionarios[i] != null) //Verifica se existe algo na posição escolhida
System.out.println(empresa.funcionarios[i].salario); //Imprime o salário
}
}
class Empresa{
String nome;
String cnpj;
Funcionario[] funcionarios;
void adicionar(Funcionario f, int posição){
this.funcionarios[posição] = f;
}
}
class Funcionario {
int salario;
public Funcionario(){}
}[/code]
eros, tudo bem
no momento estou na Empresa trabalhando, mas creio que o problema esta: empresa.funcionario[i] o correto e da forma que você mostra: empresa.funcionario[i].salario. vou imprimir a pagina e levar pra casa e tentar resolver muito obrigado.
[quote=jolivier]eros, tudo bem
no momento estou na Empresa trabalhando, mas creio que o problema esta: empresa.funcionario[i] o correto e da forma que você mostra: empresa.funcionario[i].salario. vou imprimir a pagina e levar pra casa e tentar resolver muito obrigado.[/quote]
Bom, a lógica você aplica da maneira que VOCÊ achar melhor. Isso é entre você e seu empregador… quanto ao código que eu postei ele está rodando corretamente, de acordo com o que você queria, segundo seu post. Teste e quaisquer novas dúvidas, poste aqui.
Abraço.