1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
package LongComparator;
import java.util.Comparator;
public class LongComparator implements Comparator {
// Methode qui prendre en parametre un objet quelquonque
// si c'est un Long ou un String, le transforme et le renvoie en objet Long sinon
// déclenche une exception...
private Long convertToLong(Object o) throws ClassCastException {
Long l;
if (o instanceof Long){
//si o est une instance de Long
l = (Long) o;
} else if (o instanceof String) {
//si o est une instance de String
l = new Long((String) o);
} else {
throw new ClassCastException();
}
return l;
}
//Methode de comparaison entre 2 objets Long
//Va retourne -1, 0 ou 1 en fonction du résultat de la comparaison.
//permettra de dire si o1 est plus grand, egal ou plus petit que 02
public int compare(Object o1, Object o2) throws ClassCastException {
Long l1 = convertToLong(o1);
Long l2 = convertToLong(o2);
return l1.compareTo(l2);
}
} |
Partager