C#实训Day014:C#类型转换

2025-04-18 22:49:33

1、不同的数据类型所存储的数据类型也各不相同,取值范围也不一样,当您声明一个int类型时,系统分配相应大小的内存来存储这个值。

C#实训Day014:C#类型转换

2、我们可以发现有些数据类型很相似,只是存储的值范围不同,比如说short、int、long都是指整数类型,但是他们所能存储的值范围却不相同,所以这样的数据类型在一定的条件下是可以相互转换的。

C#实训Day014:C#类型转换

3、在C#中程序允许使用两种转换方式:隐式转换和显式转换。隐式转换:这是 C# 默认的安全转换方式,从小的整数类型转换为大的整数类型,从派生类转换为基类,执行转换的规则非常简单,可以让编译器执行转换,隐式转换不需要做任何工作,也不需要另外编写代码。数据类型自动转换原则:短数据---->长数据,无符号---->有符号(短无转长有)

C#实训Day014:C#类型转换

4、这里我们可以看到类型a是16位的整型数值,而b是32位的整型数值,我们将a的值赋给了b,所以只要a取值范围完全包含在类型b的取值范围内,就可以隐式转换为类型b。基于这个转换规则,C#的隐式转换不会导致数据丢失,当然除了相似类型之间可以转换,不同类型之间其实也是可以转换的,比如把整型转换成浮点型。

C#实训Day014:C#类型转换

5、显式转换: 显式转换又叫强制类型转换,需要使用强制转换运算符,在特定的情况下进行,转换规则比较复杂,而且强制转换会造成数据丢失。显式转换需要用户明确的指定转换类型,比如将double类型数据转换成int类型数据,这里我们可以看到小数点后面的值被忽略了。

C#实训Day014:C#类型转换

6、显示类型转换方法,主要有三种形式倦虺赳式,比如强制转换成字符串类型:① (string)/ToString②Convert.ToString()③String.Parse()方法①使用显式强制转换,当菀蒯踔观我们从 int 类型到 long、float、double 或decimal 类型时可以使用隐式转换,但是当我们从 long 类型到 int类型转换就需要使用显式强制转换,否则会产生编译错误,我们也可以是使用a.ToString。

C#实训Day014:C#类型转换

7、方法②使用Convert类进行转换,Convert类中提供了很多转换的方法。使用这些方法的前提是能将需要转换的对象转换成相应的类型,如果不能转换则会报格式不对的错误。当然强制转换会造成数据丢失,所以要谨慎使用。

C#实训Day014:C#类型转换

8、方法③通过int.Parse()方法转换,参数类型只支持string类型。注意:使用该方法转换时string的值不能为为NULL,不然无法通过转换;另外string类型参数也只能是各种整型,不能是浮点型,不然也无法通过转换。

C#实训Day014:C#类型转换
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢