gpt4 book ai didi

C# 动态大小索引器

转载 作者:太空宇宙 更新时间:2023-11-03 19:35:38 25 4
gpt4 key购买 nike

如何设置大小动态增长的索引器?下面,我使用了固定大小的数组。如果我使用 List<Employee> ,那么没有索引器就没有意义了。所以我怎样才能保持阵列动态增长?

class Department
{
private Employee[] employee = new Employee[6];

public Employee this[int arg]
{
get { return this.employee[arg]; }
set { this.employee[arg] = value; }
}
}

最佳答案

如果索引大于当前大小,则必须创建一个新数组,并将现有内容复制到新数组中。 Array.Resize 会为你做这件事。 (请注意,它不会更改现有数组 - 它会返回一个指定大小的新数组,其中包含之前的元素。)

您可能需要考虑调整到比您真正需要的更大的数组,这样您就不必经常调整大小。

你确定使用 List<T> 不会更容易吗?尽管?当它已经内置到框架中时,手动执行此类操作相当乏味......

关于C# 动态大小索引器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1768952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com