2013-10-15 35 views
0

我试图解决这个问题很长一段时间。我需要的是一个尽可能简单的脚本,它接受float'x'和int'n',然后用'n'小数输出'x'。这可能是somethng像:每次输出浮点数都有不同的小数位数

float x = 111.1111f;  
int n = 2; 

System.out.printf("%{n}f", x); 

(输出:“111.11”)

什么我主要寻找的是某种格式化工具允许你使用字符串声明的内部变量。有没有像这样简单的方法来使其工作?如果不是,我的问题最简单的解决方案是什么?

回答

4

怎么样了 '明显的' .....

System.out.printf("%." + n + "f", x); 
+0

谢谢!这工作,我只需要添加一个缺失的点。 System.out.printf(“。%”+ n +“f”,x); –

+0

没问题,加点完整性。 – rolfl

2

你也可以使用十进制格式来实现这一

 int n = 2; 
     float x = 111.1111f; 
     DecimalFormat df = new DecimalFormat(); 
     df.setMaximumFractionDigits(n); 
     System.out.println(df.format(x)); 
相关问题