首页 > 解决方案 > How to subtract a property value from a list on a condition

问题描述

In my C# application, I need to subtract a property value from a huge list (HoList? Right now i do this, not sure i so it right?

int value1 =2;
HoList.Select(r => r.Count - value1).ToList();

标签: c#listselectsubtraction

解决方案


在您的问题中,您选择的HoList是带有 property 的某种类型Count。通过查看Select声明,我可以看到这一点。

当您打电话时,Select您正在选择要返回的内容,在您的示例中,您正在返回Count - value1。这很可能是一个int结果。 Select只是返回一个IEnumerable<int>,然后ToList()将它IEnumerable<int>变成一个List<int>。您也没有将该列表分配给任何内容。

如果要更改原始列表,可以执行以下操作:

HoList.ForEach(r => r.Count -= value1);

如果它是一个很大的列表,您也可以将并行性用于这样的事情:

HoList.AsParallel().ForAll(r => r.Count -= value1);

推荐阅读