我想格式化double数据类型值的输出 固定长度。我使用了以下代码,但在执行程序时遇到了一些错误。
这是我尝试过的:
double p = 80.00;
double r = 199999.00;
double n = 80.00;
System.out.printf("║%9.2f│%9.f│%9.2f│%9.2f║", p ,r ,n , p * (1 + r) * n);
我想得到这个输出:
║ 80.00│199999.000000│ 80.00│1280000000.00║
任何人都可以帮助我获得这种类型的输出吗? 我用它来创建一个原始值和计算值的表。
答案 0 :(得分:1)
您的代码中存在错误,应该是:
System.out.printf("║%9.2f│%9f│%9.2f│%9.2f║", p ,r ,n , p * (1 + r) * n)
我用以下代码测试了它:
double p = 80.00;
double r = 199999.00;
double n = 80.00;
System.out.printf("║%9.2f│%9f│%9.2f│%9.2f║", p ,r ,n , p * (1 + r) * n);
结果如下:
║ 80.00│199999.000000│ 80.00│1280000000.00║
答案 1 :(得分:-1)
你缺少%9.f│中的号码,所以它应该像
System.out.printf("║%9.2f│%9.2f│%9.2f│%9.2f║", p ,r ,n , p * (1 + r) * n);