float変数に格納しようとしているときに、javaで大きな数字に問題があります。大きな番号をJavaで処理する
import java.math.BigDecimal;
import java.text.DecimalFormat;
public class testConversion {
public static void main(String[] args) {
String s = "135598877.50";
Float f = Float.parseFloat(s);
DecimalFormat df = new DecimalFormat("#0.00");
System.out.println(f);
System.out.println(df.format(f));
}
}
OUTPUT:
1.3559888E8
135598880.00
このプログラムの出力は135598880.00
ない135598877.50
です。
なぜこのことが起こっているのか、これを処理する最良の方法は何ですか?私は切り捨て/丸めを全く望んでいません。
よろしく、
感謝を。私は浮動小数点からBigDecimalに移動しています – Kaddy