c# 类型转换 int.TryParse() 方法

public static bool TryParse(string s,out Int32 result);

如果转换成功则返回true。否则返回false

int.TryParse(string s,out int i) 的参数: s是要转换的字符串,i 是转换的结果。

  1. 执行成功返回true,输出转换成功的值;执行失败返回0
经过测试发现如下:

int i=0;

1、s 为null

int.TryParse(null,out i) 
false

2、s 为空字符串

int.TryParse(“”,out i) 
false

3、s字符串中带有 空格。

int.TryParse(“1 “,out i) 
true 
int.TryParse(” 1”,out i) 
true 
int.TryParse(” 1 “,out i) 
true 
int.TryParse(“1 2”,out i) 
false

4、非数字型字符串 肯定是 false了。

5、在数据库的操作中,经常会遇到了 DBNull

int.TryParse(System.DBNull,out i) 
“System.DBNull”是一个“类型”,这在给定的上下文中无效

int.TryParse(System.DBNull.Value,out i) 
与“int.TryParse(string,out int)”最匹配的重载方法具有一些无效参数 
int.TryParse(System.DBNull.Value.ToString(),out i) 
false
判断一个输入框是否为整数
            int baseNum = default(int);
            if (!int.TryParse(txtBaseNum.Text,out baseNum))
            {
                MessageBox.Show("请输入一个整数。");
                return;
            }
//语法:int.TryParse(str,out res)

int res = 1;
int i = 3;
string str = "";
if(int.TryParse(str,out res)){
    //因为str是字符串类型,所以此次转换肯定是失败的,失败返回false
    //所以不会进来循环内部
    //由于执行失败,所以res的值是0
}
if(int.TryParse(i,out res)){
    //因为i是int类型,所以此次转换是成功的,成功返回true
    //所以会进入到循环内部
    //由于执行成功,所以res的值是i,也就是3
}
————————————————
版权声明:本文为CSDN博主「Dear_BigTiger」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Dear_BigTiger/article/details/81033844

总结:TryParse可以为我们的程序减少报错概率,帮助我们准确的完成业务需求,也可以用来判断用户输入的时间、金额、数量等是不是符合规则

相关文章

项目中经常遇到CSV文件的读写需求,其中的难点主要是CSV文件...
简介 本文的初衷是希望帮助那些有其它平台视觉算法开发经验的...
这篇文章主要简单记录一下C#项目的dll文件管理方法,以便后期...
在C#中的使用JSON序列化及反序列化时,推荐使用Json.NET——...
事件总线是对发布-订阅模式的一种实现,是一种集中式事件处理...
通用翻译API的HTTPS 地址为https://fanyi-api.baidu.com/api...