合并列表<T>的相同类型

Gui*_*shy 4 c# list

我有2个列表,其定义是:

List<Type> filteredTypes = new List<Type>();
List<Type> interfaceTypes = new List<Type>();
Run Code Online (Sandbox Code Playgroud)

当我的列表被填充时,我想在它们两个上得到一个循环,我的想法是在"循环"之前合并它们,所以我不必使用LINQ(不喜欢它......) - )我检查了在线文档,我想我必须这样做:

filteredTypes.Concat(interfaceTypes);
Run Code Online (Sandbox Code Playgroud)

我尽可能深地调试,并且在指令后我的列表是相同的...我错过了什么?

Dav*_*haw 7

concat函数returns是一个新集合,它不会添加到现有集合中.

var allTypes = filteredTypes.Concat(interfaceTypes);
Run Code Online (Sandbox Code Playgroud)

  • "Enumerable"上的大多数函数都是返回新序列的纯函数,而`List`上的大多数函数都会改变列表 - 不同API之间的不一致是C#和.NET非常大并且逐渐构建的结果十年的历程. (2认同)