[英]Java: adding floating point numbers with expansions
我很抱歉,如果有人問這個問題,但是我找不到任何可以幫助我的東西。 當我想添加數字並顯示它們時,這是我的大型程序的一部分,但是當我遇到數字0.6
輸出並不“准確”。 我想將它們精確顯示到小數點后一位。 我該如何實現?
源代碼:
public class NumberTest {
public static void main(String[] args){
double n = 0.6;
double sum = 0.0;
for(int i = 0; i < 10; i++){
System.out.println(sum);
sum += n;
}
}
}
輸出:
0.0
0.6
1.2
1.7999999999999998
2.4
3.0
3.6
4.2
4.8
5.3999999999999995
不要使用println,而要使用printf(...)
因為printf允許格式化輸出。
System.out.printf("%.1f%n", sum);
或使用DecimalFormat對象:
DecimalFormat df = new DecimalFormat("0.0");
System.out.println(df.format(sum));
是的,這是一個重復的問題,重復的重復...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.