将新元素添加到 C# 数组的末尾

Adding a new element to the end of a C# array

我正努力做到标题所说的那样

    int[] weeks = {};
    weeks[weeks.Length]=1;

这行不通。也没有 .Add 方法。

有什么想法吗?或者这是不可能的

根据定义,C# 中的数组具有固定大小,不能动态扩展。

我建议使用 List<>,因为它们可以动态扩展,就像其他编程语言中的向量一样。

List<int> weeks = new List<int>();
weeks.add(1);

查看更多here.

第 1 行声明并初始化了一个新的没有特定大小的一维 int 数组。 第 2 行将数组 (weeks) 的大小调整为其实际大小加 1。 第 3 行将值 1 分配给最后位置的元素(我们在第 2 行中创建的)

记住:int[5]周; -> 要访问最后一个元素,您必须使用索引 4 -> weeks[4] = 1

int[] weeks = {};
Array.Resize(ref weeks,weeks.Length + 1);
weeks[weeks.Length - 1]=1;

首先没有剃刀阵这种东西。 Razor 是一个视图引擎,数组是一种数据结构。 数组的长度是固定的,所以如果你声明一个长度为 5 的数组:

int[] weeks = new int[5];

尝试将元素添加到第五位将导致 IndexOutOfRangeException

如果您需要一些大小可变的数据结构,您可以查看所有实现 IList 接口的对象,例如 List, an ArrayList 和其他对象。

IList 接口还定义了您请求的 Add 方法。