C# 几种数据类型转换方式
2024-09-25 16:48:06
1.(int)变量名[强制类型转换]
该转换方式主要用于数字类型之间的转换,从int类型向long,float,double,decimal 类型转换可以使用隐式转换,但从long型到int 就需要使用显示转换,即使用该类型的转换方式否则产生编译错误。
该方式对于浮点数会无条件的舍去,会失去精确度
对于char类型的到int类型的转换,传回的值是ASCII码
示例:double doubleValue = 3.14159265; int intValue = (int)doubleValue;
2.int.Parse(string 变量名)
该方式是将数字内容的字符串转换为int类型,如果字符串的内容为Null ,则抛出ArgumentNullException异常;如果字符串内容不是数字,则抛出FormatException异常。
使用该方法只能处理字符串的内容,而且转换后的字符串内容要在int类型的可表示范围之内
3.int.TryParse(string s, out int result)
该方式也是将数字内容的字符串转换为int类型,但是该方式有比int.Parse 优越的地方,就是它不会出现异常,最后一个参数result是输出值,如果转换成功则输出相应的值,转换失败则输出0。
4. Convert.ToInt32
该方式不仅可以将字符串类型转换为int,还可以将其他的类型转换为int。变量若为object或string类型,当其值为Nul时,会传回0,不会造成程序错误,但是若此string类型的值为string.Empty,转换成int时,程序仍会出错。
该方式对于float类型做四舍五入。
该方式同强制类型转换一样在处理char类型的时候,返回的都是ASCII码
示例: int intValue1 = "123".ConvertTo<int>();
int? intValue2 = "123".ConvertTo<int?>();
DateTime dateTimeValue1 = "1981-08-24".ConvertTo<DateTime>();
DateTime? dateTimeValue2 = "1981-08-24".ConvertTo<DateTime?>();
最新文章
- 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸
- javascript中的弹框
- python sproto支持64位有符号整数
- 动态调用web服务
- CSRF - 空Referer绕过
- Direct3D11学习:(零)常见问题及解决方法整理
- ping 有端口的ip
- Unity3D研究院之Inspector面板枚举的别名与排序
- Weka EM 协方差
- 【.NET基础】--委托、事件、线程(3)
- Codeforces Round #237 (Div. 2)
- xfce terminal tab被解释为super+tab的bug
- Windows窗口的尺寸和位置
- 微软云计算 Massive Data 处理语言Scope 1
- C++的string类
- 警惕挂着开源的招牌到处坑蒙拐骗的垃圾项目,比如iBase4J
- spring 加载jar包中的配置文件
- python第十四课--排序及自定义函数
- js方法call和apply实例解析
- linux 单网卡来绑定多IP实现多网段访问以及多网卡绑定单IP实现负载均衡