4
一個子集我有一個List<Animal>
包含Cat
型,Dog
和Pig
(爲簡單起見)的對象LINQ - 獲取基於類型
我想從我的List<Animal>
選擇所有的狗到一個新的List<Dog>
。
這在LINQ中是如何完成的?
一個子集我有一個List<Animal>
包含Cat
型,Dog
和Pig
(爲簡單起見)的對象LINQ - 獲取基於類型
我想從我的List<Animal>
選擇所有的狗到一個新的List<Dog>
。
這在LINQ中是如何完成的?
您可以使用Enumerable.OfType<T>
:
var dogs = animals.OfType<Dog>().ToList();
(注意ToList()
只需要做出一個List<Dog>
如果你只需要IEnumerable<Dog>
,你可以把它關閉。)
像這樣的東西應該工作。
var animals = new List<Animals> { new Dog(), new Cat(), new Pig(), }; //etc.
var dogs =
animals
.OfType<Dog>()
.ToList();
+1也是我的失敗 –