有几个与nullable
类型有关的问题:
int x;
Console.WriteLine(x);
如果未初始化变量,则表示该变量不包含任何内容或
我们可以说它是空的。那么这个空值等于
null
?如果是,那么值类型对象如何包含
null
值?如果不,那么这个空值叫什么呢?
如果我尝试编译未初始化的
int
变量(上述代码),则编译器会错误地使用未分配的局部变量,但不会告诉我变量中存储了什么。 最佳答案
与字段不同,编译器可以轻松地检测到您正在使用本地未初始化的变量,并且不会让您编译该代码,因此没有任何价值。
对于字段,情况略有不同,因为编译器不会大喊大叫,而是会为该类型分配默认值。如果是int
,则为0
;
关于java - 未初始化的整数等于null,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42885090/