在计算中,是float类型的,但是很多数据都是小数点后面5、6位,现在想设定保存小数点后面一位或者两位,如何设定?
不知道还有多少分了,希望大家能帮助

解决方案 »

  1.   

    public class liuwei
    {
     public static void main(String args[])
      {
        double x=6.52341221;
        String y=Double.toString(x);
        y=y.substring(0,3);
        x=Double.parseDouble(y);
        System.out.println("*******"+x);
      }
    }
      

  2.   

    如果是显示 可以用IndexOf截掉多余的部分
      

  3.   

    float aa=0.676f
    DecimalFormat df = new DecimalFormat("###.00");
    df.format(aa)
      

  4.   

    我认为楼上这样做不合理,如果是5.999999的话,那你截了会是多少呀。再说substring(0,3),如果是5555.9又是多少呢。哈哈,我认为要用StringTokenizer来截取。并进行四舍五入。个人之见
      

  5.   

    //保留一位小数
    double test = Math.round(1.25*10)/10.0;
      

  6.   

    谢谢大家
    我下午没来到这里看
    自己研究了一下
    发现了这个方法:
    import java.text.DecimalFormat;DecimalFormat df0 = new DecimalFormat("###");
    DecimalFormat df1 = new DecimalFormat("###.0");
    DecimalFormat df2 = new DecimalFormat("###.00");float f = 3.23456
    df0.format(f);
    df1.format(f);
    df2.format(f);3个结果分别为:
    3
    3.2
    3.24我觉得这样比较科学
    大家觉得如何呢