2013-10-15 34 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)); 
相關問題