tengo una clase, que he simplificado a esto:¿Por qué está roto mi simple comparador?
final class Thing {
private final int value;
public Thing(int value) {
this.value = value;
}
public int getValue() {
return value;
}
@Override public String toString() {
return Integer.toString(value);
}
}
Quiero ordenar un arreglo de esta cosa. Así que he creado un copmarator simple:
private static final Comparator<Thing> reverse = new Comparator<Thing>() {
public int compare(Thing a, Thing b) {
return a.getValue() - b.getValue();
}
};
Luego uso la forma de dos argumentos Arrays.sort
.
Esto funciona bien para mis casos de prueba, pero a veces todo va mal con la matriz terminando en un orden extraño pero repetible. ¿Cómo puede ser esto?
¿Va todo mal? ¿Cómo? – MarkusQ
¡Ese es el rompecabezas! – erickson