优化C#代码:var ErtQuery = tQuery.Where(o => o.Process == "26").Select(p => p.Barcode).ToList(); var YitQuery = tQuery.Where(o => o.Process == "17").ToList(); List<string> asss = new List<string>(); foreach (var item in ErtQuery) { var tong = YitQuery.FirstOrDefault(o => o.Barcode == item); YitQuery.Remove(tong); }
时间: 2024-02-10 09:25:56 浏览: 62
如何优化C语言代码
4星 · 用户满意度95%
为了优化这段代码,可以考虑使用 LINQ 的 Join 操作来替代循环和手动移除元素的操作。以下是优化后的代码:
```csharp
var ErtQuery = tQuery.Where(o => o.Process == "26").Select(p => p.Barcode).ToList();
var YitQuery = tQuery.Where(o => o.Process == "17").ToList();
var result = from e in ErtQuery
join y in YitQuery on e equals y.Barcode into g
select g.FirstOrDefault();
YitQuery.RemoveAll(y => result.Contains(y));
```
这样,通过使用 Join 操作,我们可以直接找到匹配的元素,并从 YitQuery 中移除它们,而不需要手动遍历和删除元素。这将提高代码的性能和可读性。
阅读全文