C# 类型转换
C# 类型转换
类型转换是将一种数据类型的值分配给另一种类型。
在 C# 中,有两种类型的转换:
- 隐式转换 (自动)- 将较小的字体转换为较大的字体大小
char
->int
->long
->float
->double
- 显式转换 (手动)- 将较大的类型转换为较小的类型
double
->float
->long
->int
->char
隐式转换
当将较小的尺寸类型传递给较大的尺寸类型时,会自动进行隐式转换:
例子
int myInt = 9;
double myDouble = myInt; // Automatic casting: int to double
Console.WriteLine(myInt); // Outputs 9
Console.WriteLine(myDouble); // Outputs 9
显式转换
必须通过将类型放在值前面的括号中来手动进行显式转换:
例子
double myDouble = 9.78;
int myInt = (int) myDouble; // Manual casting: double to int
Console.WriteLine(myDouble); // Outputs 9.78
Console.WriteLine(myInt); // Outputs 9
类型转换方法
也可以使用内置方法显式转换数据类型,例如 Convert.ToBoolean
, Convert.ToDouble
, Convert.ToString
, Convert.ToInt32
(int
) 和 Convert.ToInt64
(long
):
例子
int myInt = 10;
double myDouble = 5.25;
bool myBool = true;
Console.WriteLine(Convert.ToString(myInt)); // convert int to string
Console.WriteLine(Convert.ToDouble(myInt)); // convert int to double
Console.WriteLine(Convert.ToInt32(myDouble)); // convert double to int
Console.WriteLine(Convert.ToString(myBool)); // convert bool to string
为何要转换?
很多时候,不需要进行类型转换。但有时你必须这样做。在使用时,请查看下一章 用户输入,查看一个例子。