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

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

是否可以实现以下代码?我知道它不起作用,但我想知道是否有解决方法?

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


精慕HU
浏览 547回答 3
3回答

守候你守候我

就在这里:var&nbsp;genericListType&nbsp;=&nbsp;typeof(List<>);var&nbsp;specificListType&nbsp;=&nbsp;genericListType.MakeGenericType(typeof(double));var&nbsp;list&nbsp;=&nbsp;Activator.CreateInstance(specificListType);

慕哥6287543

更简洁的方法可能是使用通用方法。做这样的事情:static&nbsp;void&nbsp;AddType<T>() &nbsp;&nbsp;&nbsp;&nbsp;where&nbsp;T&nbsp;:&nbsp;DataObject{ &nbsp;&nbsp;&nbsp;&nbsp;Indexes.Add(typeof(T),&nbsp;new&nbsp;Dictionary<int,&nbsp;T>());}

江户川乱折腾

试试这个:var&nbsp;genericListType&nbsp;=&nbsp;typeof(List<>);var&nbsp;specificListType&nbsp;=&nbsp;genericListType.MakeGenericType(typeof(double));var&nbsp;list&nbsp;=&nbsp;Activator.CreateInstance(specificListType);
打开App,查看更多内容
随时随地看视频慕课网APP