c#List集合了多个Class,如何执行
时间: 2024-12-27 15:31:49 浏览: 14
当你有一个`List<T>`集合,其中包含多种自定义的`Class`实例,你可以根据它们共享的属性或方法来执行统一的操作。以下是一些常见的情况:
1. 遍历并处理不同类型的数据:
```csharp
List<MyClassA> classAList = ...;
List<MyClassB> classBList = ...;
foreach (MyClassA itemA in classAList)
{
// 对itemA进行操作
DoSomething(itemA);
}
foreach (MyClassB itemB in classBList)
{
// 对itemB进行操作
DoSomethingElse(itemB);
}
```
`DoSomething` 和 `DoSomethingElse` 是两个泛型方法,可以根据具体的Class类型进行不同的操作。
2. 根据条件过滤和筛选:
```csharp
List<MyClass> mixedList = ...;
var filteredList = mixedList.Where(x => x.Is符合条件).ToList();
```
3. 执行批量操作(如果所有Class有相同的公共操作):
```csharp
List<MyClass> dataList = ...;
dataList.ForEach(item =>
{
ItemOperation(item);
});
```
其中`ItemOperation`是用于所有Class的一个通用方法。
4. 利用LINQ进行更复杂查询:
```csharp
var result = from item in mixedList
select new
{
PropertyA = item.PropertyA,
PropertyB = item.PropertyB
};
```
这将创建一个新的集合,包含所有类的某些字段的组合。
阅读全文