Erro método contem de um Array de Funcionários

4 respostas
javatar
Olá, eu havia solucionado outro erro agora apareceu outro, vou colar as duas classes e o nome do erro:
class Empresa {
	String nome;
	String cnpj;
	Funcionario[] empregados;
	
	void adiciona(Funcionario f) {
		for(int i = 0; i < this.empregados.length; i++) {
			if(empregados[i] == null) {
				this.empregados[i] = f;
				break;
			}
		}
	}
	
	void mostraEmpregados() {
		for (int i = 0; i<this.empregados.length; i++) {
			System.out.println("Funcionario: "+this.empregados[i].salario);
		}
	}
	
	boolean contem(Funcionario f){
	boolean ex = false;
		for(int i = 0; i >< this.empregados.length; i++) {
			if(empregados[i] == null) {
				System.out.println("O Funcionario de nº"+i+" não contem na empresa");
				ex = false;
			}
		}
		return ex;
	}			
}
class ProgramaEmpresa {
	public static void main(String[] args) {
		Empresa empresa = new Empresa();
		empresa.empregados = new Funcionario[10];
		
		for(int i = 0; i<10; i++) {
			Funcionario f = new Funcionario();
			f.salario = 1000+ i*100;
			empresa.adiciona(f);
		}	

		empresa.mostraEmpregados();
		empresa.contem();
	}
}
http://img810.imageshack.us/f/semttuloaw.jpg/

4 Respostas

R

o erro eh q dentro da sua classe empresa chama o metodo
empresa.contem();

mas esse metodo tem um argumento e vc nao ta passando
boolean contem(Funcionario f){ …

doravan

Falta um parâmetro do tipo funcionário no método contem();
tente contem(f);

EduardoPinto

Você criou um metódo que recebe um Funcionário, mas está fazendo a chamado sem passar nenhum Funcionário como parâmetro.[3]

javatar

agora deu eu tive que colocar dentro do for

for(int i = 0; i<10; i++) { Funcionario f = new Funcionario(); f.salario = 1000+ i*100; empresa.adiciona(f); empresa.contem(f); }

Criado 25 de março de 2011
Ultima resposta 26 de mar. de 2011
Respostas 4
Participantes 4