在 ToList<T>()
中指定具体类型是否有意义? , AsEnumerable<T>()
等方法?
威尔.ToList<SomeClass>()
执行速度比 .ToList()
快?
最佳答案
如果编译器推断出一种类型而您想要指定另一种类型,这是有意义的。否则没有意义。
例如,假设您有一个 IEnumerable<string>
并想创建一个 List<T>
... 如果你想要 List<string>
然后调用ToList()
.如果您想使用通用协方差并获得 List<object>
, 调用 ToList<object>
:
IEnumerable<string> strings = new [] { "foo" };
List<string> stringList = strings.ToList();
List<object> objectList = strings.ToList<object>();
无论你使用上面的代码还是中间行生成的IL都是一样的
List<string> stringList = strings.ToList<string>();
这只是编译器为您推断类型的问题。
Will
.ToList<SomeClass>()
execute faster than just.ToList()
?
不,由于上述...生成了相同的代码。
关于c# - ToList<T>() 与 ToList(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33544078/