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

以下是隐式和显式类型转换之间的区别-

隐式类型转换

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

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

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

sum = val1 + val2;

上面,我们有两个整数变量,当我们将其与一个长变量求和时,它不会显示错误。由于编译器自行执行隐式转换。

现在让我们打印值。

示例

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();
      }
   }
}