To test whether primitive float or double values are equal according to 
`Float.equals` and `Double.equals` you either have to create wrapper instances 
for them (possible performance decrease), use the respective static `compareTo` 
(verbose) or have to use the appropriate methods (`floatToIntBits` / 
`doubleToLongBits`) (verbose and error-prone since you could confuse them with 
the other conversion methods).

It would be good to provide static methods for testing for equality of the 
primitive values:

// In Float.java

public static boolean equals(float a, float b) {
return Float.floatToIntBits(a) == Float.floatToIntBits(b);
}

// In Double.java

public static boolean equals(double a, double b) {
return Double.doubleToLongBits(a) == Double.doubleToLongBits(b);
}

This would be very convenient for developers and prevent them from writing 
(possibly faulty) code for this themselves.

Reply via email to