C# int.Parse()与int.TryParse()
int i = -1;
bool b = int.TryParse(null, out i);
执行完毕后,b等于false,i等于0,而不是等于-1,切记。
int i = -1;
bool b = int.TryParse("123", out i);
执行完毕后,b等于true,i等于123;
1、(int)是一种类型转换;当我们觟nt类型到long,float,double,decimal类型,可以使用隐式转换,但是当我们从long类型到int类型就需要使用显式转换,否则会产生编译错误。
2、int.Parse()是一种类容转换;表示将数字内容的字符串转为int类型。
如果字符串为空,则抛出ArgumentNullException异常;
如果字符串内容不是数字,则抛出FormatException异常;
如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常;
3、int.TryParse与 int.Parse 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。
最后一个参数为输出值,如果转换失败,输出值为 0,如果转换成功,输出值为转换后的int值
4、Convert.ToInt32()是一种类容转换;但它不限于将字符串转为int类型,还可以是其它类型的参数;
比较:Convert.ToInt32 参数为 null 时,返回 0; int.Parse 参数为 null 时,抛出异常。Convert.ToInt32 参数为 "" 时,抛出异常; int.Parse 参数为 "" 时,抛出异常。 Convert.ToInt32 可以转换的类型较多; int.Parse 只能转换数字类型的字符串
最新文章
- [FromBody]与[FromUrl]
- Windows Server 2008 R2 WEB服务器配置系列文章索引
- 记录centos6.8安装Oracle10.2.0.1过程中的错误解决
- oracle 删除旧的归档文件或跟踪文件
- Java 中的System.exit
- 【动态规划】 之最长公共子序列LCS
- NHibernate的简单例子
- Linux性能及调优指南(翻译)之Linux内存架构
- IoC容器Autofac正篇之解析获取(五)
- IOS发展--他们控制的定义
- mongo数据库时间存储的问题
- UVA - 10249 The Grand Dinner
- Linux系统命令归纳
- JavaScript与java差异
- Javascript设计模式记录
- (admin.E108) The value of 'list_display[4]'报错解决方案
- Jenkins之Linux和window配置区别
- Java字节码 小结
- nginx负载均衡三:keepalive+nginx双机热备 和负载均衡
- apache配置文件:http.conf配置详解