[RESOLVIDO]Atualizar Lista de Objetos

Olá pessoal,
no Java estou criando uma lista de objetos dessa forma:
private Vector<Fishes> fishes = new Vector<Fishes>();

Tenho uma função para adicionar os valores neste vetor, e adiciono as informações dessa forma:

f.setPosition(position);
f.setWeightValue(weight);
f.setFitnessValue(fit);
fishes.add(f);

Logo após, pego os valores inseridos nesse vetor e salvo em um outro vetor, dessa forma:

public void updateFitnessList(){
	for(int i=0; i<QTD_FISH; i++) {
		fitnessList[i] = fishes.get(i).getFitnessValue();
	}
}

Até ai, está tudo funcionando corretamente, o vetor fitnessList é atualizado com sucesso e eu consigo utiliza-lo.

O problema é que no decorrer do código, eu preciso atualizar a fitnessList, chamando a função updateFitnessList() em outros momentos do código. Antes de chamar a função no meio do código eu novamente atualizo a minha lista de fishes, e faço isso dessa forma:

f.setPosition(position);
f.setFitnessValue(fit);
fishes.add(f);

Ou seja, estou tentando atualizar a lista de fishes, da mesma forma que eu salvo as informações nela pela primeira vez. Mas, embora eu esteja atualizando os fishes utilizando fishes.add(f); toda vez que a função updateFitnessList() é chamada, a variável global fitnessList nunca está atualizada, ou seja: A fitnessList só está sendo atualizada na primeira vez, mas não nas outras vezes.

Poderiam me ajudar por favor?

Bom, a primeira coisa a se fazer, recomendo muito trocar a lista de Vector para List…

private List<Fishes> fishes = new ArrayList<Fishes>();

Isso porque vetcor consome mais memória/processamento devido ser thread safe

Quanto ao algoritmo, essa linha…

for(int i=0; i<QTD_FISH; i++) {

Imagino que QTD_FISH tem uma quantidade fixa certo?

Se sim, ele sempre vai percorrer a mesma quantidade, sendo que na lista cada vez que se usa o método add, você está adicionando um novo item no fim da lista, mesmo ele já existindo… uma outra forma de você percorrer a lista dinamicamente…

for (Fishes fish : fishes) {
    ...
}

Esse for é chamado de for each no java,

Fazendo assim você vai perceber que ao invés de atualizar os itens da lista, você está reinserindo…