主题:发现了一个奇怪的问题,不能理解
在调这个程序的时候发现了一个奇怪的问题:
代码
1. package org.kangsg219.test;
2.
3. public class Test {
4.
5.
6. public static void main(String[] args) {
7. double n1=0.89,n2=0.20,n3=0.10;
8. System.out.println(n1+n2+n3);
9. System.out.println(n1+n3+n2);
10. }
11.
12. }
运行的结果是:
1.1900000000000002
1.19
为什么不相等呢?仅仅是相加顺序不同而已,怎么会这样?不理解,知道的网友请赐教!
代码
1. package org.kangsg219.test;
2.
3. public class Test {
4.
5.
6. public static void main(String[] args) {
7. double n1=0.89,n2=0.20,n3=0.10;
8. System.out.println(n1+n2+n3);
9. System.out.println(n1+n3+n2);
10. }
11.
12. }
运行的结果是:
1.1900000000000002
1.19
为什么不相等呢?仅仅是相加顺序不同而已,怎么会这样?不理解,知道的网友请赐教!