这可能是一个非常菜鸟的问题,但我无法完全理解为什么我能够将项目添加到我的列表中,为什么我不能将其设置为 null ?
public class Test
{
public List<string> Source { get; set; }
public Test()
{ this.Source = new[] { "Hey", "hO" }.ToList(); }
}
class Program
{
static void Main(string[] args)
{
Test test = new Test();
ModifyList(test.Source);
//Why here test.Source.Count() == 3 ? Why isn't it null ?
}
private static void ModifyList(List<string> list)
{
list.Add("Three");
list = null;
}
}
为什么在调用 ModifyList, test.Source.Count() == 3 之后?为什么不是 null ?
我本来希望该列表要么为 NULL,要么保持不变,但有两个元素。
有人可以向我解释发生了什么吗?非常感谢你!