question: public static float nextDown ( final float start ) { if ( start > Float . NEGATIVE_INFINITY ) { if ( start == 0.0f ) { return - Float . MIN_VALUE ; } final int bits = Float . floatToRawIntBits ( start ) ; return Float . intBitsToFloat ( bits + ( bits > 0 ? - 1 : 1 ) ) ; } else if ( start == Float . NEGATIVE_INFINITY ) { return Float . NEGATIVE_INFINITY ; } else { return start ; } }
target:  Semantically equivalent to nextAfter(start,Double.NEGATIVE_INFINITY).