C# 中隐式类型转换和显式类型转换有什么区别?

csharpprogrammingserver side programming更新于 2025/10/13 16:37:17

以下是隐式类型转换和显式类型转换的区别 −

隐式类型转换

C# 以类型安全的方式执行这些转换。

为了理解这个概念,我们将 int 隐式转换为 long。

int val1 = 11000;
int val2 = 35600;
long sum;

sum = val1 + val2;

上面,我们有两个整型变量,当我们在 long 变量中对它们求和时,不会显示错误。因为编译器会自行执行隐式转换。

现在让我们打印这些值。

示例

using System;
using System.IO;

namespace Demo {
   class Program {
      static void Main(string[] args) {
         int val1 =34567;
         int val2 =56743;
         long sum;

         sum = val1 + val2;

         Console.WriteLine("Sum= " + sum);

         Console.ReadLine();
      }
   }
}

显式类型转换

这些转换由用户使用预定义函数显式完成。

让我们看一个将 double 类型转换为 int 的示例 −

示例

using System;

namespace Program {
   class Demo {
      static void Main(string[] args) {
         double d = 1234.89;
         int i;

         // 将 double 转换为 int。
         i = (int)d;
         Console.WriteLine(i);
         Console.ReadKey();
      }
   }
}

相关文章