我90%肯定我之前在stackoverflow上看过这个答案,事实上我从未见过<!> quot; int?<!> quot;在这里看到它之前的语法,但无论我如何搜索我都找不到上一篇文章,这让我发疯了。

我可能偶然吃了有趣的蘑菇,但如果我不是,有人可以指出以前的帖子,如果他们能找到它或重新解释它吗?我的stackoverflow search-fu显然太低了....

有帮助吗?

解决方案

INT?是Nullable<int>的缩写。

可能是您要查找的帖子。

其他提示

INT?是Nullable。

MSDN:使用可空类型(C#编程指南)

INT?与Nullable是一回事。它允许你有<!> quot; null <!> quot; int中的值。

int属于System.ValueType,不能将null作为值。处理数据库或元素可以具有空值的其他类型时,检查元素是否为空可能很有用。那是什么时候?发挥作用。诠释?是一个可以为null的类型,其值可以从-2147483648到2147483648并且为null。

参考: https://msdn.microsoft.com/en-us/库/ 1t3y8s4s.aspx

符号?在int之后意味着它可以为空。

?符号通常用于变量可以接受null或整数的情况,或者返回整数或null。

希望使用环境有所帮助。通过这种方式,您不仅限于处理整数。

当您期望整数中的空值时,尤其是在使用CASTING时,可以使用它 例如:

x= (int)y;

如果y = null则会出错。 你必须使用:

x = (int?)y;

Int不能接受null但是如果开发人员使用int?然后你在int中存储null 喜欢 int i = null; // 不接受 诠释? i = null; //它的工作 主要用于MVC页面列表中的分页

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top