2 回答

TA贡献1921条经验 获得超9个赞
不清楚你想做什么,但你可以使用 LINQ 延迟评估来实现类似的事情。你不能用硬编码索引做你想做的事。您需要使用过滤器和 LINQ 方法。
List<int> main = Enumerable.Range(0,11).ToList();
List<int> a = new List<int>{ 1, 5, 3, 0, 7};
IEnumerable<int> b = main.Where(i => i % 2 == 0);
IEnumerable<int> c = main.Where(i => i % 2 == 1);
foreach (var i in b)
{
Console.Write(i + ","); // 0, 2, 4, 6, 8, 10
}
Console.WriteLine();
foreach (var i in c)
{
Console.Write(i + ","); // 1, 3, 5, 7, 9
}
Console.WriteLine();
foreach (var i in a)
{
main.Remove(i);
}
foreach (var i in b)
{
Console.Write(i + ","); // 2, 4, 6, 8, 10
}
Console.WriteLine();
foreach (var i in c)
{
Console.Write(i + ","); // 9
}
Console.WriteLine();
- 2 回答
- 0 关注
- 414 浏览
添加回答
举报