考虑我有一个数组,
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>使用双重策略来最小化所需的重新分配.