import java.nio.ByteBuffer;
public class Program {
public static void main(String[] args) {
float value = 3.14f;
byte[] bytes = ByteBuffer.allocate(4).putFloat(value).array();
StringBuilder binaryString = new StringBuilder("0b");
for (byte b : bytes) {
binaryString.append(String.format("%8s", Integer.toBinaryString(b & 0xFF)).replace(' ', '0')).append("_");
}
binaryString.deleteCharAt(binaryString.length() - 1);
System.out.println(binaryString.toString());
}
}
// https://www.h-schmidt.net/FloatConverter/IEEE754.html
/*
run:
0b01000000_01001000_11110101_11000011
*/