C#强制类型转换

a 夏天 提交于 2019-12-02 13:13:49

1.任何一门编程语言均有相关数据类型。C#也不例外,其基本数据类型有int,short,long,float,double,string等。数据类型之间可以相互转换。不过转换过程要注意小类型能转换成大类型,但大类型一般不能转换成小类型。如int型可以转换成float型,但float型不一定可以转换成int型,至少这在C,C++是这样,但在C#中明显有了改变,似乎微软公司也允许这样的形式存在了。例如:

double dbl_num=12345678910.456;
int k = (int) dbl_num ;//此处运用了强制转换

以上代码如果在C,C++中强制转换成int型,肯定会出错,但现在在C#中却不会出错了,不过转换后的值往往是溢出值,是不精通的。这点需要大家注意。

2.采用另一种方式转换类型,如int.parse(),int32.parse()等采用方法来转换.

如string str=”100″;

int i=int.Parse(str);

注意:str除掉引号的类型必须和*.Parse的类型一致。如果将100改成100.78,即变成float类型,运行时将会报错”输入字符串的格式不正确.”

3.采用后缀式转换,如k.toString(),一般运用于字符串或日期等其它类型

int i=100;

string s=i.ToString();

4.采用Convert类来实现转换,该类基本支持所以类型之间的转换

string str=”100″;

int i = Convert.ToInt16(str);

注意:str除掉引号的类型必须和Convert.*的类型一致。如果将100改成100.78,即变成float类型,运行时将会报错”输入字符串的格式不正确.”

作者:耑新新,发布于 博客园 https://www.cnblogs.com/Amedeo/p/6216318.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!