¿Puedo comparar cuerdas bien, pero me gustaría saber cómo puedo clasificar los números de coma flotante?Ayuda para comparar variables de miembro flotante usando comparadores
getChange() devuelve una Cadena. Quiero poder ordenar descender. ¿Cómo puedo hacer esto?
ACTUALIZACIÓN:
package org.stocktwits.helper;
import java.util.Comparator;
import org.stocktwits.model.Quote;
public class ChangeComparator implements Comparator<Quote>
{
public int compare(Quote o1, Quote o2) {
float change1 = Float.valueOf(o1.getChange());
float change2 = Float.valueOf(o2.getChange());
if (change1 < change2) return -1;
if (change1 == change2) return 0; // Fails on NaN however, not sure what you want
if (change2 > change2) return 1;
}
}
estoy recibiendo el error de tiempo de compilación:
This method must return a result of type int ChangeComparator.java
Aparte de la cuestión NaN, usted no tiene ninguna instrucción de retorno garantizado en el código. Realísticamente lo haces, pero el compilador no puede decir eso porque tienes tres declaraciones if diferentes. No puede evaluarlos hasta el tiempo de ejecución, por lo que cree que podría pasar la última instrucción if y no hay una cláusula de retorno. – Matt