int a = 91000;
int b = Math.pow(100,2);
float ans = (float) a/b;
ans=9.1
小數點我想小數點後的輸出正確的6位數字,即顯示在Java
ans =9.100000
我怎樣才能做到這一點在Java中?
int a = 91000;
int b = Math.pow(100,2);
float ans = (float) a/b;
ans=9.1
小數點我想小數點後的輸出正確的6位數字,即顯示在Java
ans =9.100000
我怎樣才能做到這一點在Java中?
使用下面的代碼,以浮動轉換爲字符串,後點您提供的小數位數你想有: String.format("%.6f", ans)
看一看文件,更多格式:http://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html#syntax
你可以使用printf的方法:
System.out.printf("%.6f", val);
的%.6f語法告訴Java來與6位小數
回報您的變量浮點數您可以使用double
和formatted output。喜歡的東西,
int a = 91000;
double b = Math.pow((double) 100, 2);
double ans = a/b;
System.out.printf("%.6f%n", ans);
輸出是
9.100000
你不需要在這裏將'100'強制轉換爲'double'。 –
您CA使用DecimanlFormat
:
ans=9.1
System.out.println(new DecimalFormat("#0.000000").format(ans));
輸出:
9.100000
更多在DecimalFormat
訪問this鏈接。
您可以使用String.format來定義您喜歡的輸出,例如
String.format("Range = %.6f", range)
顯示小數點後6位。
最簡單的辦法是寫類似
int a = 91000
System.out.println(a/1e4); // there is only 4 decimal places possible
還是要強制其精度
System.out.printf("%,6f%n", a/1e4);
6位數字,不要使用'float'如果您關心的精度。 「雙」的準確度要高出萬億倍。也不要使用Math.pow進行簡單的操作,比如平方,它很昂貴且相對不準確。 –