不,这不是错误。 int
和float
数据类型can hold negative values都是如此,因此解析负值可以返回true。
如果您查看float的文档,请说:
float
类型可以表示大约1.5×10-45到3.4×1038的值,精度为7位。
查看int的文档告诉您:
int
类型表示带符号的32位整数,其值介于-2147483648和2147483647之间。
这意味着可以定义使用相应的TryParse
方法解析此范围内的负数。这不是一个错误。
表示无符号整数别名uint
:
uint类型表示无符号32位整数,其值介于0和4294967295之间。
uint res;
bool b = uint.TryParse("-7", out res);
将产生false
。因为该值超出范围