Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 整数验证_C#_Int - Fatal编程技术网

C# 整数验证

C# 整数验证,c#,int,C#,Int,愚蠢的问题,但这句话毫无价值 int a; if (a != null) 因为整数变量在定义时由编译器自动设置为null 要检查整数,请始终检查>=0是否正确?int是一个类,不等于null如果未赋值,编译器会将基本变量的值设置为其“默认”值。int的默认值为0。所以,是的,你提到的比较没有任何作用 如果代码中需要一个可为null的int,那么应该使用“null”类型“int?” 如果int可为null,那么您提到的比较可能会有用。是,除非整数恰好是可为null的类型 int? myInt

愚蠢的问题,但这句话毫无价值

int a;

if (a != null)
因为整数变量在定义时由编译器自动设置为null


要检查整数,请始终检查>=0是否正确?

int是一个类,不等于null

如果未赋值,编译器会将基本变量的值设置为其“默认”值。int的默认值为0。所以,是的,你提到的比较没有任何作用

如果代码中需要一个可为null的int,那么应该使用“null”类型“int?”


如果int可为null,那么您提到的比较可能会有用。

是,除非整数恰好是可为null的类型

int? myInt = null;

if(myInt == null)
{
    Console.WriteLine("myInt was null.");
}

假设您的标记和语法是C#,您在特定场景中尝试过int.TryParse(…)吗?我不太确定你想从提供的代码中做什么-正如Andy提到的,如果你的int可以为null,那么null检查可能会有用。

int是一种值类型,永远不会为
null
,除非你将其声明为可为null的整数:

int? i = null;
if (i == null)
    Console.WriteLine("it's null");

谢谢如果不使用可为null的类型,那么我的假设成立呢?基本的“int”永远不能为null,所以您不需要检查null。如果您的代码需要它为null,那么应该使用int?而不是表示未赋值的“magic int value”。如果是不可为空的int,则可能需要检查int.minvalue。同样,这取决于您的场景。代码正在检查SelectedIndex,以查看它是否具有值(用户从radiobuttonlist或其他内容中选择了值)。SelectedIndex为-1表示未选择任何内容。任何其他内容都指示ListItem在Items集合中的位置(从零开始)。啊,因此编译器将其初始化为0。