我有一个由List<>
组成的方法,它将根据所选字段进行更改。
如果我记得由不同值组成的方法是否删除了列表中的项目?
我声明了这样的方法:
private int mymethod(int g)
{
List<int> list1 = new List<int>();
List<int> list2 = new List<int>();
List<int> list3 = new List<int>();
return list1.Sum();
}
答案 0 :(得分:3)
在你的情况下虽然list1没有任何分配给它的东西,所以我想知道你在这里总结一下是什么。并专门回答你的问题是的,每次方法调用都会重新创建list1 。
您需要在此处了解scope变量。
之外,在方法中创建的任何实例都无法访问。答案 1 :(得分:2)
是的,一旦方法终止,方法内局部变量的值将被清除。每次调用时都不会保留这些值。
你可以在方法之外声明列表。
答案 2 :(得分:0)
如果你重新初始化你编写的实例,是的。 它将用最后一个替换新实例。
答案 3 :(得分:0)
实际的List
对象本身不仅会被清除,而且在方法返回后甚至不会存在。每次调用方法时都会重新创建它们。