gpt4 book ai didi

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

转载 作者:可可西里 更新时间:2023-11-01 08:14:57 30 4
gpt4 key购买 nike

假设我有一个数组,

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;

如果您无法预测数组的大小,则第二种方法没有用,因为每次添加项目时重新分配数组的成本很高;一个List<T>使用加倍策略来最小化所需的重新分配。

关于c# - 如何在运行时分配数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/724501/

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