java中的保留n位小数

来源:互联网 发布:广西软件开发 编辑:程序博客网 时间:2024/06/02 10:19

IO-03. 求整数均值(10)

时间限制
400 ms
内存限制
32000 kB
代码长度限制
8000 B
判题程序
Standard
作者
乔林(清华大学)

本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。

输入格式:

输入在一行中给出4个整数,其间以空格分隔。

输出格式:

在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后1位。

输入样例:
1 2 3 4
输出样例:
Sum = 10; Average = 2.5

代码如下

import java.util.Scanner;public class Main{public static  void main(String [] args){Scanner scan=new Scanner(System.in);int a,b,c,d,sum;float e1,e2;a=scan.nextInt();b=scan.nextInt();c=scan.nextInt();d=scan.nextInt();//System.out.println("Sum" + " = " + (a+b+c+d));sum = a + b + c +d;e1 = (float) (sum / 4.0);e2 = (float)(Math.round(e1*10))/10;    //保留一位小数则为10,两位则为100,依此类推//System.out.println("Average" + " = " + e2);System.out.println("Sum" + " = " + (a+b+c+d)+"; "+"Average" + " = " + e2);}}


java 如何使的float保留2位或者多位小数

  • |
  • 浏览:2291
  • |
  • 更新:2013-05-08 23:15

java 如何使的float保留2位或者多位小数


方法/步骤

  1. 方法1:


     float   f   =  34.232323;  
     BigDecimal   b  =   new BigDecimal(f);  
     float   f1   =  b.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue();  
     //   b.setScale(2,  BigDecimal.ROUND_HALF_UP) 表明四舍五入,保留两位小数

    1.  float ft   =  134.3435f;    

    2.    

    3.  int   scale  =   2;//设置位数    

    4.  int   roundingMode  =  4;//表示四舍五入,可以选择其他舍值方式,例如去尾,等等.    

    5.  BigDecimal   bd  =   new  BigDecimal((double)ft);    

    6.  bd   =  bd.setScale(scale,roundingMode);    

    7.  ft   =  bd.floatValue();  


  2. 2

    方法2:  

    import java.text.DecimalFormat;       
    String   a   =  new DecimalFormat("###,###,###.##").format(100.12345  );

    1.  float   scale  =   34.236323;   

    2.  DecimalFormat   fnum  =   new  DecimalFormat("##0.00");    

    3.  String   dd=fnum.format(scale);      

    ystem.out.println(dd);  


  3. 3

    方法3:最简单的方法

    1.  float   a  =   123.2334f;   

      float  b   =  (float)(Math.round(a*100))/100;(这里的100就是2位小数点,如果要其它位,如4位,这里两个100改成10000)


1 0
原创粉丝点击