C# 中的 Typeof() 和 GetType()


Typeof()

该类型采用 Type 并且返回参数的 Type。

例如:对于以下内容采用 System.Byte −

typeof(byte)

以下是一个示例 −

示例

 在线演示

using System;
class Program {
   static void Main() {
      Console.WriteLine(typeof(int));
      Console.WriteLine(typeof(byte));
   }
}

输出

System.Int32
System.Byte

GetType()

在 C# 中,数组 class 的 GetType() 方法获取当前实例的 Type。

获取类型。

Type tp = value.GetType();

在以下示例中,我们使用该类型检查 int 值。

if (tp.Equals(typeof(int)))
Console.WriteLine("{0} is an integer data type.", value)

以下是 GetType() 方法在 C# 中的用法。

示例

 在线演示

using System;

class Program {
   public static void Main() {
      object[] values = { (int) 100, (long) 17111};
      foreach (var value in values) {

         Type tp = value.GetType();

         if (tp.Equals(typeof(int)))
         Console.WriteLine("{0} is an integer data type.", value);

         else
         Console.WriteLine("'{0}' is not an int data type.", value);
      }
   }
}

输出

100 is an integer data type.
'17111' is not an int data type.

更新于: 22-Jun-2020

1.6 万+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始
广告