在构造函数中初始化列表

3

我需要创建一个类,同时将两个事件列表初始化为空列表。我不确定这是否是要求我做的事情,但我知道如何创建一个列表和一个构造函数。我已经创建了两个列表,现在应该创建构造函数。以下是我的其中一个列表:

List<Person> organize = new List<Person>();

我该如何在构造函数中将两个事件列表初始化为新列表?


需要更多信息。就目前而言,是的,它毫无意义。可以发布一个更大的代码块吗? - Russell Steen
3
语言障碍和作业问题会导致失败吗? - Allen Rice
有人标记它为作业...你永远不知道。 - Justin Niessner
好的,我们已经创建了这2个列表。它们应该是类中只读属性。现在我们需要创建一个构造函数,我猜它会重新初始化这两个列表为新的空列表...我看到一些回复似乎就是我需要做的!谢谢...如果我解释得不好请见谅。 - Shonna
我明白了别人发布的内容该怎么做,只是不确定这是否是被要求的。 - Shonna
5个回答

11

根据我从你的问题中了解到的信息,你有一个包含两个列表的类。

你的要求是在类内部将这些列表初始化为空列表。

下面是一个例子(唯一的区别是我没有在声明时初始化这些列表,而是在类构造函数中进行初始化):

public class YourClass
{
    List<Person> organize;
    List<Person> anotherOrganize;

    // constructor
    public YourClass()
    {
        // initialize the two lists to empty lists
        organize = new List<Person>();
        anotherOrganize = new List<Person>();
    }
}

2
如果这是家庭作业,您的教师可能会告诉您在构造函数中初始化列表,而不是在声明点上。
class MyClass
{
    List<Person> organize;

    public MyClass()
    {
        this.organize = new List<Person>();
    }
}

2
如果您的列表被声明为“字段”(直接在类内部声明的成员变量)并且在声明时进行了初始化,那么您不需要在构造函数中重新初始化它。初始化表达式将由编译器自动移动到构造函数中。请保留HTML标签。

0
List<Person> organize = new List<Person>();

这将创建一个空列表。你能更具体一些吗?我感觉有些细节缺失。

也许你的意思是这样的?

 public class TestClass
 {
      List<Person> personList;

      public TestClass()
      {
           personList = new List<Person>();
      }

 }

0

我认为你在问的是为什么你类的构造函数应该实例化这两个列表。你说得对。

List<Person> organize = new List<Person>();

将实例化列表。但以下方式也可以:

List<Person> organize;
public MyClass()
{
organize = new List<Person>();
}

我是否理解这个问题?


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接