C#-设置数组大小

本文关键字:数组 设置 C#- | 更新日期: 2023-09-27 18:29:42

我正在尝试创建一个新的类,它包含一个数组,但它的大小不应该是恒定的。

假设我有Program.cs,我有一个不同的类,叫做Category.cs.

Category.cs如下所示:

class Category
    {
        static int MemberCount = 2;
        private string[] ids = new string[MemberCount];
        public string[] Ids
        {
            get { return ids; }
            set { ids = value; }
        }
...

我的目标是在从此类创建新对象时以某种方式修改MemberCount。。。

我希望它有意义。。。

谢谢!:-)

C#-设置数组大小

假设您确实希望/需要使用一个在对象构建时长度固定的数组(而不是在注释中明智地建议使用List<T>),那么您可以添加一个构造函数:

class Category
{
    private readonly string[] ids;
    public string[] Ids
    {
        get { return ids; }
    }
    public Category(int memberCount) {
        ids = new string[memberCount];
    }
}

请注意,我已经删除了Ids属性上的setter,否则数组可以被任意长度的数组覆盖。同样,我已将ids设为只读。

使用泛型列表或其他集合类。

class Category 
{
   public List<string> Ids { get; set; }
   Category() 
   {
       Ids = new List<string>();
   }
}

您可以使用此方法调整数组的大小:Array.Resize(ref ids,newSizeOfArray);