なぜ結果が異なりますか? 私はfloatを使うと675を得て、もし私が二重に使うなら674 ... isnt that weird?Java DecimalFormatはfloatとdoubleで異なる結果を表示します
float f = 12345.6745;
double d = 12345.6745;
Locale l = Locale.forLanguageTag("es-ES");
DecimalFormat df = (DecimalFormat) NumberFormat.getInstance(l);
print(df.format(f));
>> 12.345,675
l = Locale.forLanguageTag("es-ES");
DecimalFormat df = (DecimalFormat) NumberFormat.getInstance(l);
print(df.format(d));
>> 12.345,674
おかげ
'float'と' double'は同じではないためです。 ;) –