Java isNan comment cela fonctionne?

J'ai été à la recherche à la openjdk-1.7.0_25 code source et j'ai vu cette méthode:

/**
 * Returns {@code true} if the specified number is a
 * Not-a-Number (NaN) value, {@code false} otherwise.
 *
 * @param   v   the value to be tested.
 * @return  {@code true} if the argument is NaN;
 *          {@code false} otherwise.
 */
static public boolean isNaN(float v) {
    return (v != v);
}

Je ne peux pas comprendre comment il fonctionne, lorsque cette méthode peut retourner true?

source d'informationauteur rascio