深入理解 c# 第三章 获取泛型类型定义和获取特定的已构造类型
2018-04-07 22:34
671 查看
class TypeofOperator { static internal void DemonstrateTypeof<X>() { Console.WriteLine(typeof(X)); //显示方法的类型参数 Console.WriteLine(typeof(List<>)); //显示泛型类型 Console.WriteLine(typeof(Dictionary<,>)); Console.WriteLine(typeof(List<X>)); //显示封闭类型 Console.WriteLine(typeof(Dictionary<string, X>)); Console.WriteLine(typeof(List<long>)); //显示封闭类型 Console.WriteLine(typeof(Dictionary<long, Guid>)); } static void Main() { DemonstrateTypeof<int>(); } }Dictionary<TKey,TValue> 要有尖括号和 逗号
输入
Console.WriteLine(typeof(X));
Console.WriteLine(typeof(List<>));
Console.WriteLine(typeof(Dictionary<,>));
Console.WriteLine(typeof(List<X>));
Console.WriteLine(typeof(Dictionary<string, X>));
Console.WriteLine(typeof(List<long>));
Console.WriteLine(typeof(Dictionary<long, Guid>));
输出
System.Int32
System.Collections.Generic.List`1[T]
System.Collections.Generic.Dictionary`2[TKey,TValue]
System.Collections.Generic.List`1[System.Int32]
System.Collections.Generic.Dictionary`2[System.String,System.Int32]
System.Collections.Generic.List`1[System.Int64]
System.Collections.Generic.Dictionary`2[System.Int64,System.Guid]
`1 表示一个参数 x当作 Int32 默认为T,Dictionary默认为 TKey,TValue
long 当作 Int64
相关文章推荐
- 深入理解 c# 第三章 通过反射来调用和获取泛型方法
- 深入理解 c# 第三章 用泛型方法将一个给定的值进行比较
- 深入理解 Java 泛型:类型擦除、通配符、运行时参数类型获取
- [李景山php] 深入理解PHP内核[读书笔记]--第三章:变量及数据类型--变量的结构和类型--预定义变量
- 深入理解 c# 第三章 泛型枚举 从0枚举到9
- 深入理解 c# 第三章 普通的类中声明和使用泛型方法
- <转>深入理解 Java 泛型:类型擦除、通配符、运行时参数类型获取
- 【转】[C# 基础知识系列]专题九 :深入理解泛型可变性
- [C# 基础知识系列]专题七: 泛型深入理解(一)
- [C#基础知识系列]专题八: 深入理解泛型(二) 推荐
- 深入理解C#中的泛型
- [李景山php] 深入理解PHP内核[读书笔记]--第三章:变量及数据类型--变量的结构和类型--常量
- [C#基础知识系列]专题:深入理解动态类型
- java通过反射获取私有的构造方法,及反射擦除泛型数据类型约束
- C#值类型和引用类型的深入理解
- 深入理解C#---1.可空类型
- 深入理解 c# 第三章 用== 和 != 进行引用比较
- C#值类型和引用类型的深入理解
- [C# 基础知识系列]专题九: 深入理解泛型可变性
- [C#基础知识系列]专题十七:深入理解动态类型