ここでフロートを切り捨てています。しかし、値が丸められています。それは望ましくありません。たとえば、値が 12.989 の場合 -> 12.98 のみとして出力する必要があります。Java 1.6 からのみサポートされているため、10 進形式の SetRoundingMode を使用できません。私のは1.5 JDKです。SetRoundingMode() メソッドを使用せずに誰かが私を助けてくれませんか????
String pattern = "##,##0.00";
NumberFormat nf = NumberFormat.getNumberInstance();
DecimalFormat df = (DecimalFormat)nf;
double fPart;
Float value=233.989f;
String dstr = String.valueOf(value);
dstr = dstr.substring(dstr.indexOf(".")+1);
Long db = Long.valueOf(dstr);
if(db > 0){
df.applyPattern(pattern);
System.out.println("input="+value+", fPart="+dstr);
}
String output = df.format(value);
System.out.println(output);