Jack Shiraziの著書 "Java Performance Tuning"では、doubleからStringへの変換を最適化する方法を紹介しています。 最適化のコードはhttp://onjava.com/onjava/2000/12/15/graphics/DoubleToString.javaJack Shirazi DoubleToString Java最適化問題
ですが、0.0951(0.0999まで)のメソッドを使用する場合、2桁表示には特定の数字で問題があるようですが、「0.0a」を返します。これは明らかに間違っています。 0.0949で実行すると、0.09が正しく返されます。 1.0951で実行すると、正しく1.10が返されます。
何が問題だと思いますか?私は小さなビットを理解しようとしているが、まだ犯人を見つけていない。ここ
は私のテストは、メインです:
public DoubleToString() {
double d1 = 0.0949;
double d2 = 0.0951;
StringBuffer sb = new StringBuffer();
sb.append("display d1 = ");
appendFormatted(sb, d1, 2, '.', ',', 3, '-', '-');
sb.append(" : ");
appendFormatted(sb, d2, 2, '.', ',', 3, '-', '-');
System.out.println(sb.toString());
}
おそらくあなたはジャックシラジに連絡すればよいですか? –