用什么把 Long的3.14159弄成3.14?

解决方案 »

  1.   

    Long是长整型,怎么有小数,是double吧
    java.text.DecimalFormat df=new java.text.DecimalFormat("#.##");
    double d=3.14159;
    System.out.println(df.format(d));
      

  2.   

    java.math.BigDecimal
    BigDecimal bd = new BigDecimal("3.14159265");
    bd = bd.setScale(2,BigDecimal.ROUND_HALF_UP);
      

  3.   

    哇,上面都是星级人物哦
    可以先转化成string然后substring(0,indexof(".")+2) ,哈哈
      

  4.   

    用String的不会四舍五入的,呵呵,不要说再自己写个四舍五入
      

  5.   

    math package 里面吧,查查文档。
      

  6.   

    用 java.text.DecimalFormat吧。另外java.text包里有很多格式化的东东,好好看看。
      

  7.   


    a=0.126; \*0.126--->0.13*\
    a*=100;  \*12.6*\
    a+=0.5;  \*13.1*\
    b=(int)a;
    a=b;     \*13.0*\
    a/=100;  \*0.13*\
      

  8.   

    double d = 13.4324;
    d=((int)(d*100))/100;
      

  9.   


    class Test1{
      public static void main(String[] args){
        double ret = convert(3.14159);
        
        System.out.println(ret);
      }
      
      static double convert(double value){
        long l1 = Math.round(value*100); //四舍五入
        double ret = l1/100.0;       //注意:使用 100.0 而不是 100
        return ret;
      }
    }
      

  10.   

    java.text.DecimalFormat df=new java.text.DecimalFormat("#.##");
      

  11.   

    Java code Math.round(1.333333555*100)/100