Bom galera , estou iniciando em programação e estou tendo dificuldade no metodo Contem da classe Empresa , não consigo fazer percorrer o vetor pra saber se o funcionário está ou não dentro da empresa.
[code]class TestaEmpresa
{
public static void main(String[] args)
{Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[5];
Você precisa retornar “true” no momento que ele encontra um funcionario, pois a pesquisa seguinte pode retornar false. Tenta desta forma:
// O problema se encontra nesse método !
boolean Contem(Funcionario f) {
for (int i = 0; i < empregados.length; i++) {
if (f.equals(empregados[i])) {
return true;
}
else if (f != empregados[i])
verifica = false;
}
return verifica;
}
1 - primeiramente, como a variável verifica, você só irá usar no escopo de verificação, do metodo Contem, declare ela como local de metodo e retire do atributo da sua classe.
2 - após o verifica, você poderia usar a instrução break, mas creio que algum professor irá explicar ela pra você com calma. por enquanto, você pode se concetrar neste código:
3 - SEMPRE coloque chaves depois de uma instrução IF, principalmente agora que você está aprendendo a programar.
// O problema se encontra nesse método !
boolean Contem( Funcionario f ){
boolean verifica = false;
for (int i = 0; i < empregados.length ;i++ ){
if (f == empregados[i]) {
verifica = true;
}
}
return verifica;
}
Quando eu boto a variável auxiliar dentro do escopo , tem que inicializar ela com false , eu pensei que era nela que estava o erro por isso eu botei na classe .