c# – 如何在运行时分配数组值

考虑我有一个数组,
int[] i = {1,2,3,4,5};

这里我已经为它分配了值.但是在我的问题中,我只能在运行时获取这些值.
如何将它们分配给数组.

例如:

我从用户获取数组的最大大小,现在我们将值分配给数组int [].

或者我可以使用任何其他数据类型,如ArrayList等,我可以转换到Int []结束?

解决方法

那么最简单的就是使用List< T>:
List<int> list = new List<int>();
list.Add(1);
list.Add(2);
list.Add(3);
list.Add(4);
list.Add(5);
int[] arr = list.ToArray();

否则,您需要分配一个合适大小的数组,并通过索引器进行设置.

int[] arr = new int[5];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
arr[4] = 5;

如果您无法预测数组的大小,则第二种方法是无用的,因为每次添加项目时重新分配数组都是昂贵的;列表< T>使用双重策略来最小化所需的重新分配.

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...