I follow the logic in the https://github.com/ndimiduk/orderly/blob/master/orderly-core/src/main/java/orderly/FloatWritableRowKey.java to implement this. 
This could flip the sign bit. The sign bit is 1 for  the result of the expression "(i >> Integer.SIZE - 1) | Integer.MIN_VALUE)", then the i^@result will flip the sign bit, right?