Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用array.sort()方法时,数组的最大大小是多少?_C#_Arrays - Fatal编程技术网

C# 使用array.sort()方法时,数组的最大大小是多少?

C# 使用array.sort()方法时,数组的最大大小是多少?,c#,arrays,C#,Arrays,在我的应用程序中,我有一个包含5000个元素的数组。我必须对这些元素进行排序,但我得到了“数组索引越界异常”的错误。 有人能告诉我数组排序的最大大小是多少吗 我应该使用ArrayList吗?没有具体的限制-您在这里只受内存的限制,此时数组已经存在,因此这不是array.Sort的限制。例如: int[] arr = new int[500000]; Random rand = new Random(); for (int i = 0; i < arr.Length; i++) arr[i]

在我的应用程序中,我有一个包含5000个元素的数组。我必须对这些元素进行排序,但我得到了“数组索引越界异常”的错误。 有人能告诉我数组排序的最大大小是多少吗


我应该使用ArrayList吗?

没有具体的限制-您在这里只受内存的限制,此时数组已经存在,因此这不是
array.Sort的限制。例如:

int[] arr = new int[500000];
Random rand = new Random();
for (int i = 0; i < arr.Length; i++) arr[i] = rand.Next();
Array.Sort(arr); // works just fine
int[]arr=newint[500000];
Random rand=新的Random();
对于(int i=0;i
我怀疑(例如)您可能有一个
IComparable[]
实现在内部抛出错误?或者,这个错误可能与
Array.Sort
无关,您只是认为错误的行是原因

当然,异常的
.StackTrace
应该会显示所有内容


否:您不应该在此处使用
ArrayList
。或者几乎在其他任何地方。

您可以发布代码吗?您可以发布用于排序的代码吗?问题很可能不是对Array.sort()的调用。5000个元素相当小,不应导致ArrayIndexOutOfBoundsException。这不是数组大小的问题。问题在于代码中访问数组元素的位置。在访问数组元素之前,请检查0是否为all,谢谢您的回复。。