这件事在这里给我带来了一段时间的头疼,我试图找到问题而无法找到答案。基本上,它会覆盖列表中的每个前一个对象。
public class ProcessadorDeSinaisImpl implements ProcessadorDeSinais {
private List<GeradorDeEvento> gerador = new ArrayList<GeradorDeEvento>();
private List<Evento> listaEvento = new ArrayList<Evento>();
public void adicionarGerador(GeradorDeEvento geradorDeEvento) {
gerador.add(geradorDeEvento);
}
public List<Evento> processarSinais(List<Sinal> sinais) { // Lista de sinais gerada pelo GeradorDeSinais !!!!
Evento resultado;
for(int i=0; i < gerador.size(); i++){
for(int j=0; j < sinais.size(); j++)
{
resultado = new EventoImpl();
resultado = gerador.get(i).gerarEvento(sinais.get(j));
if(resultado != null)
{
listaEvento.add(resultado);
}
}
}
return listaEvento;
}
}
答案 0 :(得分:0)
尝试做:
Evento resultado = new EventoImpl();
resultado = gerador.get(i).gerarEvento(sinais.get(j));
在循环外声明变量我会导致问题