📅  最后修改于: 2023-12-03 14:40:30.110000             🧑  作者: Mango
C# 的类型转换是将一个数据类型转换为另一个数据类型的过程。类型转换分为两种:隐式类型转换和显式类型转换。
隐式类型转换是指无需显式指定转换类型,就可以直接将一个数据类型转换为另一个数据类型。例如,将一个 int 类型的变量赋值给一个 long 类型的变量:
int a = 10;
long b = a; // 隐式类型转换
在上面的代码中,编译器会自动将变量 a
的值转换为 long
类型,并赋给变量 b
。
以下是可以进行隐式类型转换的一些数据类型:
显式类型转换是指需要显式指定转换类型,才能将一个数据类型转换为另一个数据类型。例如,将一个 double 类型的变量转换为 int 类型:
double a = 10.5;
int b = (int)a; // 显式类型转换
在上面的代码中,我们使用了 (int)
来显式将变量 a
的值转换为 int
类型,并赋给变量 b
。
以下是一些常用的显式类型转换:
在类型转换时需要注意,有些转换是不可能进行的,例如将一个字符串转换为 int 类型:
string a = "10";
int b = (int)a; // 编译时错误
上面的代码会在编译时出现错误,因为不能将字符串转换为 int 类型。如果在运行时进行无法转换的类型转换,会抛出 System.InvalidCastException
异常。因此,在进行类型转换时,一定要注意数据类型的兼容性。
C# 的类型转换分为隐式类型转换和显式类型转换,隐式类型转换无需指定转换类型,显式类型转换需要显式指定转换类型。在进行类型转换时,要注意数据类型的兼容性,否则会抛出异常。