私はこのコードを持っています。「テキスト」は値の例に強制されます
public static String binStringToRealString(String text, int precision) {
String result = "";
long longBits;
Double doubleValue;
text = "0011111111110001100110011001100110011001100110011001100110011010";
longBits = Long.parseLong(text, 2);
Log.d(TAG, "longBits = " + longBits);
// longBits = 4607632778762754458
doubleValue = Double.longBitsToDouble(longBits);
Log.d(TAG, "doubleValue = " + doubleValue);
// doubleValue = 1.1
result = doubleValue.toString();
Log.d(TAG, "result = " + result);
return result;
}
どうにかして丸められない doubleValue を取得できますか?
実際の値は 1.1000000000000008881784197001 です
このコンバーターのように http://www.binaryconvert.com/result_double.html?hexadecimal=3FF199999999999A
丸めを停止するにはどうすればよいですか?