覆盖添加对象到arraylist

时间:2015-04-18 21:59:48

标签: java object arraylist add overwrite

这件事在这里给我带来了一段时间的头疼,我试图找到问题而无法找到答案。基本上,它会覆盖列表中的每个前一个对象。

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;
}

}

1 个答案:

答案 0 :(得分:0)

尝试做:

 Evento resultado = new EventoImpl();
 resultado = gerador.get(i).gerarEvento(sinais.get(j));

在循环外声明变量我会导致问题