Trouver la plus grande valeur dans une ArrayList

J'ai deux fonctions différentes pour tenter de trouver la plus grande valeur dans une ArrayList.
J'ai deux depuis que j'ai été la première à voir s'ils renvoient la même valeur et puis, le temps de fonctionnement.

Cependant, ils sont reproduisant la même valeur, mais il semble être la dernière valeur de la liste de tableaux, peu importe si c'est la plus grande ou non. Je pense qu'il prend peut-être la clé de la place de la valeur.

Le code est ci-dessous, et je pense que c'est juste une simple erreur, mais quelqu'un peut me pointer dans la bonne direction?

double highest = fitnessArray.get(0);

for (int s = 0; s <fitnessArray.size(); s++){
    if (fitnessArray.get(s)>highest)
        highest=fitnessArray.get(s);

}

System.out.println("highest fitness = " + highest 
                + " indoexOf = " + fitnessArray.indexOf(highest));

double highestFitness;

highestFitness = Collections.max(fitnessArray);
System.out.println("lowest fitness 2 = " + highestFitness );
L'appel à indexOf() est 100% redondant, ainsi que l'appel à la get() deux fois.
votre code est semble bien, je l'ai essayé et il m'a donné de la valeur correcte. Ce qui est dans fitnessArray?
Aussi votre pour la boucle devrait commencer à l'indice 1 puisque vous avez déjà vérifié l'index 0 avant la boucle for.
Double Possible de comment obtenir le maximum de valeur à partir de la Liste/liste de tableaux

OriginalL'auteur James King | 2012-10-08