Galera…agora eu não to conseguindo fazer MESMO!
[code]public boolean adicionarEstudante(Estudante e) {
if (estaLotada())
return false;
else if (numeroAtualDeEstudantes == 0) {
estudantes[numeroAtualDeEstudantes] = e;
numeroAtualDeEstudantes++;
return true;
}
else {
boolean verifica = true;
for (int i = 0; i < this.estudantes.length && estudantes[i] != null && verifica; i++) {
if (estudantes[i].implicaCom(e))
verifica = false;
}
if (verifica) {
estudantes[numeroAtualDeEstudantes] = e;
numeroAtualDeEstudantes++;
}
return verifica;
}
}
@Override
public boolean ehPossivelColocarNestaSala(Estudante[] estudantes) {
if (estaLotada() && estudantes.length > (numeroMaximoDeEstudantes - numeroAtualDeEstudantes))
return false;
else {
boolean verifica = true;
for (int i = 0; i < this.estudantes.length && this.estudantes[i] != null && verifica; i++) {
for (int j = 0; j < estudantes.length; j++) {
if (this.estudantes[i].implicaCom(estudantes[j]))
verifica = false;
}
}
return verifica;
}
}[/code]
Essa classe só adiciona os alunos que não implicam com os outros.
Por exemplo: se um aluno que está na sala implica com um aluno que vc quer adicionar, ele não adiciona e retorna false, caso contrário, ele retorna true e, se for o método adicionarEstudante ele adiciona tbm.