代码之家  ›  专栏  ›  技术社区  ›  Maksym Gontar

J2ME-数字格式

  •  4
  • Maksym Gontar  · 技术社区  · 14 年前

    我需要像Java一样在J2ME中用十进制数字来格式化十进制数 DecimalFormat .

    我看到一个选择港口 Format / NumberFormat / DecimalFormat .

    您能建议准备好使用实现或库吗?

    谢谢!

    2 回复  |  直到 13 年前
        1
  •  5
  •   Maksym Gontar    14 年前

    所以,我已经管理了桌面Java的实现: bbnumberformat :

        String[] patterns = new String[] { "#,#00.00#", "0.0;(0.0)",
                "0.###E0" };
        DecimalFormat format = (DecimalFormat) DecimalFormat
                .getNumberInstance();
        double value = -12.321;
        for (int i = 0; i < patterns.length; i++) {
            String pattern = patterns[i];
            format.applyPattern(pattern);
            String text = "Pattern: " + pattern 
            + " Sample: "+format.format(value)+"\n";
            add(new LabelField(text));
        }
    

    alt text http://img220.imageshack.us/img220/6245/9000.jpg

        2
  •  2
  •   DarthJDG chetan borse    13 年前

    下面的代码是一种方法,它演示了如何将双精度小数四舍五入到N位小数:

    private double round(double num,int numDecim){
        long p=1;
        //next line – calculate pow(10,brDecim)
        for(int i=0; i<numDecim; i++)p*=10;
        return (double)(int)(p * num + 0.5) / p;
    }
    

    你可以用双份的 p=1.0; p*=10.0; 相反。