2
float number = 1;
DecimalFormat df = new DecimalFormat("#.##");
String str = ""+df.format(number);
fw.write(str);
整数1を1.00にしたいとします。しかし、ファイルstrでは、1.00ではなく1を書きます。それを正しくするには?DecimalFormatを使用しますが、正しい形式の整数を作成できません
私は、文書の末尾にあるシンボルの説明は誤解を招くと思います。 '0'は小数点の右側部分の末尾のゼロを示しますが、 '#'は表示されません。この文書は正しい例を示していますが。 – waltersu
番号が通常のフロート番号の場合はどうなりますか?たとえば、number = 1.233?両方のケースで正しいフォーマットを表示する方法はありますか? –
あなたは混乱していると思います。それは浮動小数点またはintではありません。正確さと切り上げについてです。何桁の右桁を保持しますか?少なくとも2桁を保持し、ゼロ以外の場合にのみ1を保持する場合は、 "#.00#"を使用します。数字が1.2399fの場合、最初は1.240fに丸められ、 "#.00#"を使用すると、末尾のゼロが取り除かれて "1.24"が出力されます。 "#.000"を使用すると、 "1.240"になります。レコードの場合、正確に1.233fのフロートはありません。1.23300004005 ..... – waltersu