c# - 使用包含 Type 的变量创建 Generic<T> 类型实例

标签 c# generics types instance

是否可以实现如下代码?我知道这行不通,但我想知道是否有解决方法?

Type k = typeof(double);
List<k> lst = new List<k>();

最佳答案

是的,有:

var genericListType = typeof(List<>);
var specificListType = genericListType.MakeGenericType(typeof(double));
var list = Activator.CreateInstance(specificListType);

关于c# - 使用包含 Type 的变量创建 Generic<T> 类型实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2078914/

相关文章:

c# - 在 Visual Studio 2010 中构建不同的项目集

PHP - ini_set() 期望参数 2 是字符串,给定整数

c++ - 克隆类型?

c# - 通过字符串获取静态类

c# - 从 c# 在 odoo PostgreSQL 数据库中插入记录并在 Odoo 中查看记录

c# - 寻求使用 C# 读取 .yaml 文件的指导

c# - 将控制台输出添加到 NUnit 测试结果

c# - 从单个类公开不同的接口(interface)

Java 似乎没有正确比较 double

java - 在泛型声明中使用 "? extends"时,能否避免 Java 中的参数不匹配?