Alors en Java un compare quelque chose avec "null" :
1) envoie une exception "nullpointer"
2) renvoie la valeur "false" car quelques chose n'est jamais égale à null...
du coup si vous ne gérez pas ce cas en amont vous aurez des exceptions dans vos logs alors que l'algorithme fonctionne TRES BIEN !
oO vive Java
et tout une discussion sur comment l'implémenter : http://stackoverflow.com/questions/481813/how-to-simplify-a-null-safe-compareto-implementation