No caso de avaliações de episódios, removi o setTotalVisualizacoes, e criei um método que recebe as avaliações e o app internamente calcula esse total, criei um atributo visualizações e os getter e setter dele. Incrementei totalVisualizacoes a cada set de visualizações , para na Classe principal eu poder entrar com essses numeros de visualizações, que podem ter varios inserts aliás, tipo nota do filme.
Serie lost = new Serie();
lost.setNome("lost");
Episodio episodio = new Episodio();
episodio.setNome("1");
episodio.setSerie(lost);
System.out.println("Série: " + episodio.getSerie().getNome());
System.out.println("Episodio " + episodio.getNome());
episodio.setVisualizacoes(198);
System.out.println("Visualizações: " + episodio.getVisualizacoes());
episodio.setVisualizacoes(1);
System.out.println("Visualizações: " + episodio.getVisualizacoes());
System.out.println("Total de avaliações: " + episodio.getTotalVisualisacoes());
FiltroRecomendacao f2 = new FiltroRecomendacao();
f2.filtra(episodio);
Episodios
public void setVisualizacoes(int visualisacoes) {
this.totalVisualisacoes += visualisacoes;
this.visualizacoes = visualisacoes;
}
@Override
public int getClassificaçao() {
if (totalVisualisacoes >= 200) {
return 4;
} else if (totalVisualisacoes >= 100) {
return 2;
} else
return 0;
}