(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 ...
随机推荐
- yii学习随感
最近我们公司信易网络在用yii开发一个项目自己临时学习了一下yii 把学习感悟和大家一起分享一下 Yii Framework是一个基于组件.用于开发大型 Web 应用的高性能 PHP 框架.Yii提供 ...
- python 面向对象 class 老男孩选课系统
要求:1. 创建北京.上海 2 所学校 class2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. 课程包含,周期,价格,通过学校创建课 ...
- ARM编译器4字节对齐
(1)我们假设只有一个赋初值的char型全局变量,那么系统会在data区分配一个4字节的存储空间来存储它.实际上,只用了1个字节,但是为了4字节对齐,只好分配4个字节,所以就会有3个字节浪费. (2) ...
- iOS 之 多线程一
iOS中实现多线程的技术方案 pthread 实现多线程操作 代码实现: void * run(void *param) { for (NSInteger i = 0; i < 1000; ...
- 可以用来开发h5的软件小结
webStorm phoneGap notepad++ eclips text sublime dreamWeaver intellij idea 学习h5 需要掌握的 大块的知识 xhtml ja ...
- java 常用基本数据类型的默认值
在使用基本数据类型作为类成员的时候,有时只初始化了而没有给变量赋值,那么此时,java会给你的变量赋一个默认初始值. boolean false char '/ ...
- Hbase案例分析(二)
情景1:
- js中实现页面跳转
1.在本页中跳转到指定页面 1.window.location.href方式 <script language="javascript" type="text ...
- JAVA 反序列化攻击
Java 反序列化攻击漏洞由 FoxGlove 的最近的一篇博文爆出,该漏洞可以被黑客利用向服务器上传恶意脚本,或者远程执行命令. 由于目前发现该漏洞存在于 Apache commons-collec ...
- CAS实现单点登录方案(SSO完整版)
一.简介 1.cas是由耶鲁大学研发的单点登录服务器 2.本教材所用环境 Tomcat7.2 JDK1.7 CAS Service 版本 cas-server-3.4.8-release CAS ...