我有以下代码:
List<int> nums = new List<int>();
nums.Add(1);
nums.Add(4);
nums.Add(2);
var lowNums = from n in nums
where n%2==0
select n;
Console.WriteLine("Even Numbers before adding 20 :");
foreach (var x in lowNums)
{
Console.WriteLine(x);
}
nums.Add(20);
Console.WriteLine("Even Numbers after adding 20:");
foreach (var x in lowNums)
{
Console.WriteLine(x);
}
在这里运行它时,它给了我这个输出:
.
但我想知道为什么它显示 20 因为我在添加 20 后没有运行 LINQ 表达式。我只是显示之前计算的结果。谁能解释一下?