java - 将偶数四舍五入为两位小数 "0"?

标签 java double decimal

如何将前几个偶数四舍五入为两个零?

public class MoneyDriver

     {
      public static void main( String[] args )
        {


         int a = 2011;
         int b = 21;
         double c = 2200.00;
         double d = 31500.00;




         System.out.println( "Year" + "\t" + "Age" + "\t" + "Balance at end of year" +
         "\t" + "Income adjusted for inflation" );

         for( int r = 1; r < 10; r++)
            {

            double e = Math.round(c * 100.0) / 100.0;    
            double f = Math.round(d * 100.0) / 100.0;  



            System.out.println( a + "\t" + b + "\t" + e + "\t" + f );


            a = a + 1;
            b = b + 1;
            c = ( c + 2000 ) * 1.1;
            d = ( d * 1.05 );

            }
         }
      }

目前这给了我输出:

 Year   Age Balance at end of year  Income adjusted for inflation
 2011   21  2200.0  31500.0
 2012   22  4620.0  33075.0
 2013   23  7282.0  34728.75
 2014   24  10210.2 36465.19
 2015   25  13431.22    38288.45
 2016   26  16974.34    40202.87
 2017   27  20871.78    42213.01
 2018   28  25158.95    44323.66
 2019   29  29874.85    46539.85

我假设一旦小数点固定在前四位,制表符就会自行调整。

我是 Java 新手!我不知道复杂的事情......并且想知道是否有一个简单的修复,根本没有添加太多代码。

谢谢!

最佳答案

您可以尝试使用 C: 中的格式化字符串

System.out.printf("%d\t%d\t%.2f\t%.2f\n", a, b, e, f);

关于java - 将偶数四舍五入为两位小数 "0"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19040350/

相关文章:

Java如何禁用JPanel组件自动垂直调整大小

java - 为什么扫描仪不在 try-catch while 循环 java 中要求其他输入

c++ - 为什么 cout 的默认精度不影响评估结果?

javascript - 十进制转二进制 - 结果错误

java - 非常简单的 onClick Android 应用程序无法正常工作

java - java hprof直方图解读

PHP 5.6 SoapClient 传递十进制错误

sql - 将 DB2 SQL Decimal 转换为 DATE

java - 一对多关联 "org.hibernate.InvalidMappingException: Could not parse mapping document from input stream"

c - 使用 fscanf 确定您正在读取 int 还是 double