(int),Convert.ToInt32(),Int32.Parse(),Int32.TryParsed()的用法总结
1 (int)
强制转型为整型。
当将long,float,double,decimal等类型转换成int类型时可采用这种方式。
double dblNum = 20;
int intDblNum = (int)dblNum;
例子中将double型的dblNum显式转换为int型的intDblNum。
2 Convert.ToInt32()
string strNum = "20";
int intStrNum = (int)strNum;
在VS中输入上面的代码,会提示:
无法将类型“string”转换为“int”。
这时,可以使用Convert.ToInt32()方法来完成这个转换。
int intStrNum = Convert.ToInt32(strNum);
当传入的字符串(含空串"")无法转换成int型时,会抛出异常,异常信息为:
输入的字符串格式不正确。
string strNotNum = "2x";
int intStrNotNum = Convert.ToInt32(strNotNum);
当传入参数为null时,Convert.ToInt32()方法会返回0。
int intStrNotNum = Convert.ToInt16(null);//返回0,不抛出异常
Convert.ToInt32()方法 可以转换的类型很多,详细信息请参考:
http://msdn.microsoft.com/zh-cn/library/system.convert.aspx
3 Int32.Parse()
Int32.Parse()方法同样可以将数值型字符串转换成int。
string strNum = "20";
int intStrNum = int.Parse(strNum);
当传入的字符串(含空串"")无法转换成int型时,会抛出异常,异常信息为:
输入的字符串格式不正确。
string strNotNum = "2x";
int intStrNotNum = int.Parse(strNotNum);
当传入参数为null时,会抛出异常,异常信息为:
参数值不能为null。
int intStrNotNum = int.Parse(null);
4 Int32.TryParsed()
Int32.TryParsed()方法与Int32.Parse()方法的区别是:如果输入字符串格式不满足转换的要求,Parse方法会抛出异常;而TryParse方法则不会引发异常,它会返回false表示转换无法进行,同时会将result置为0。
string strNum = "20";
int intStrNum = 0;
int result = 0;
if (int.TryParse(strNum, out intStrNum))
{
result = intStrNum;
}
string strNotNum = "2x";
int intStrNotNum = 0;
int result = 0;
if (int.TryParse(strNotNum, out intStrNotNum))
{
result = intStrNotNum;
}
当传入参数为空串””或者 null 会返回 false 。
(int),Convert.ToInt32(),Int32.Parse(),Int32.TryParsed()的用法总结的更多相关文章
- C#整数三种强制类型转换int、Convert.ToInt32()、int.Parse()的区别
1.int适合简单数据类型之间的转换,C#的默认整型是int32(不支持bool型); 2.int.Parse(string sParameter)是个构造函数,参数类型只支持string类型; 3. ...
- 转:C#整数三种强制类型转换int、Convert.ToInt32()、int.Parse()的区别
1.int适合简单数据类型之间的转换,C#的默认整型是int32(不支持bool型); 2.int.Parse(string sParameter)是个构造函数,参数类型只支持string类型; 3. ...
- C#整数三种强制类型转换int、Convert.ToInt32()、int.Parse()、string到object 的区别
1.int适合简单数据类型之间的转换,C#的默认整型是int32(不支持bool型); 2.int.Parse(string sParameter)是个构造函数,参数类型只支持string类型; 3. ...
- [No000082]Convert和Parse的区别/Convert.ToInt32()与int.Parse()的区别
(1)这两个方法的最大不同是它们对null值的处理方法: Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常. 没搞清楚Convert. ...
- Convert.ToInt32()与int.Parse()的区别
Convert.ToInt32()与int.Parse()的区别 (1)这两个方法的最大不同是它们对null值的处理方法: Convert.ToInt32(null)会返回0而不会产生任何异常, ...
- Convert.ToInt32()与int.Parse()的区别 (转载)
Convert.ToInt32()与int.Parse()的区别(1)这两个方法的最大不同是它们对null值的处理:Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Pa ...
- C#中Convert.ToInt32、int.TryParse、(int)和int.Parse四者的区别
Convert.ToInt32.(int)和int.Parse三者的区别: 首先:Convert.ToInt32 适合将object类类型转换成int类型,如Convert.ToInt32(sessi ...
- convert.ToInt32和int.parse区别
前者适合将object类类型转换成int类型 int.Parse适合将string类类型转换成int类型 1)这两个方法的最大不同是它们对null值的处理方法:Convert.ToInt32(null ...
- (int),Int32.Parse() 和 Convert.toInt32() 的区别
在 C# 中,(int),Int32.Parse() 和 Convert.toInt32() 三种方法有何区别? int 关键字表示一种整型,是32位的,它的 .NET Framework 类型为 S ...
随机推荐
- yii2源码学习笔记(十二)
继续了解controller基类. /** * Runs a request specified in terms of a route.在路径中指定的请求. * The route can be e ...
- ionic移动开发入门
学习资料:http://www.ionic.wang http://www.ionicframework.com/
- grub命令来引导linux
由于对linux系统的好奇,想按在机器上玩玩.昨天忙活了一晚上,最终才把linux安装好.但高兴的有点太早了,我还以为进linux就像进 windows那么简单哪,没有想到却蹦出来一个引导命令(gru ...
- ubuntu导出文件
ye@aliyun:python$ ./deploy.sh backup static-rw-r--r-- 1 ye ye 174K 2014-03-22 10:36 ./backup/fbz_sta ...
- POJ 3687 Labeling Balls 逆向建图,拓扑排序
题目链接: http://poj.org/problem?id=3687 要逆向建图,输入的时候要判重边,找入度为0的点的时候要从大到小循环,尽量让编号大的先入栈,输出的时候注意按编号的顺序输出重量, ...
- cocos2dx3.4 导出节点树到XML文件
l利用cocostudio做UI和场景时,经常要去获取某个节点,cocostudio2.1开始加入了文件的概念,可以创建场景,节点,层等文件,把公用的东西创建到文件里,然后把这个文件拖到场景里使用,达 ...
- 分析ECMall的注册与登录机制
ecmall的注册流程index.php?app=member&act=register. 首先app是member,act是register方法. index.php中.通过ecmall的s ...
- Winform的多线程问题
http://blog.csdn.net/Maths_bai/article/details/6000744
- dll的加载方式主要分为两大类,显式和隐式链接
之前简单写过如何创建lib和dll文件及简单的使用(http://blog.csdn.net/betabin/article/details/7239200).现在先再深入点写写dll的加载方式. d ...
- Maven学习:Eclipse使用maven构建web项目(转)
Maven学习:Eclipse使用maven构建web项目(转) 8.更改class路径:右键项目,Java Build Path -> Source 下面应该有4个文件夹.src/main/j ...