0 java
notional我有类型的原始变量double:
private double notional;
Run Code Online (Sandbox Code Playgroud)
现在我必须进行null检查并抛出一个Exceptionif null:
if (item.getNotional() == null) {
throw new Exception("Rfgygf");
}
Run Code Online (Sandbox Code Playgroud)
但这不是正确的方法,因为原始类型不能是null。请解释如何在 Java 中执行正确的null检查notional。
有没有办法用 with 来做到这一点double还是我需要将其转换为Double?
诸如double和 之类的原始数据类型int不能为空。这就像一个int不可能1.1。
这意味着,您无需担心原始数据类型的无效性!它们永远不会为 null,因此不会抛出NullPointerExceptions。我想您之所以感到困惑是因为您认为没有值的变量必须为空。但这是错误的。考虑这个类:
public class MyClass { int i; }
Run Code Online (Sandbox Code Playgroud)
现在您创建该类的一个对象:
MyClass obj = new MyClass();
Run Code Online (Sandbox Code Playgroud)
现在您打印obj.i. 会是什么?它不是 null,而是0!
所有原始数据类型都有一个默认值。例如, 的默认值为int0, 的默认值为double,0.0这就解释了为什么上面的obj.i值为 0。 那么 的默认值是多少char?它是'\0'!
请记住,原始数据类型不能是null.
| 归档时间: |
|
| 查看次数: |
7062 次 |
| 最近记录: |