是什么区别decimal,float并double在.NET?
什么时候会有人使用其中一种?
我知道这Double是一个包装类,它包装了double数字.今天,我看到了另一个主要区别:
double a = 1.0;
double b = 1.0;
Double c = 1.0;
Double d = 1.0;
System.out.println(a == b); // true
System.out.println(c == d); // false
Run Code Online (Sandbox Code Playgroud)
对我这么奇怪!!!
所以,如果我们Double每次使用,我们必须做这样的事情:
private static final double delta = 0.0001;
System.out.println(Math.abs(c-d) < delta);
Run Code Online (Sandbox Code Playgroud)
我无法解释为什么Double直接比较错误.请解释一下.
谢谢 :)
可能重复:
Java:比较不同的double和Double
在我的一个实验室的示例java程序中,我有两种不同的方法分别采用Double和double参数.
在将参数传递给它们时,如何区分它们?
当我将原始类型int放入java中的ArrayList时,为什么原始类型int会自动更改为对象Integer?