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?