最适合网络开发者的网站
C# 语言。W3Schools 英文课程

尿素 西斯

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

亲自尝试 »

为何要转换?

很多时候,不需要进行类型转换。但有时你必须这样做。在使用时,请查看下一章 用户输入,查看一个例子。