[英]What is the maximum size of an array while using Array.sort() method?
在我的应用程序中,我有一个包含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
我怀疑您可能(例如)有一个IComparable[<T>]
实现在内部抛出错误? 或者,也许此错误与Array.Sort
完全 Array.Sort
,而您只是将错误的行视为原因。
当然,异常的.StackTrace
应该显示所有内容。
否:您不应该在这里使用ArrayList
。 或几乎其他任何地方。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.