C# 中数组的 LongLength 属性

WBOY
发布: 2023-09-17 16:49:15
转载
1006 人浏览过

C# 中数组的 LongLength 属性

在C#中,Array类有一个只读属性叫做LongLength。它返回一个长整数值,表示数组可以容纳多少个元素。只有秩为一或更高的数组,即非单维数组,才能访问LongLength属性。

尽管 LongLength 属性提供长整型值,但请务必记住,C# 中数组的最大大小仍然受到系统支持的内存量的限制。如果您尝试构建太大的数组,可能会引发 OutOfMemoryException。

语法

public long LongLength { get; }
登录后复制
  • Long− 64位整数值,表示数组中元素的数量。

整个数组中的元素数量通过C#中数组的LongLength属性作为长整数返回。当处理可能包含超过20亿元素(32位整数的最大容量)的大数组时,这个属性非常有用。在这种情况下,Length属性会返回一个负值,表示溢出问题。通过返回一个能够表示更高值的长整数,LongLength属性解决了这个问题。

示例

在这个程序中,我们创建了一个包含10亿个整数的数组,并给每个元素赋值。然后,我们使用Length和LongLength属性来获取数组中的元素数量。Length属性由于整数溢出而返回一个负数,而LongLength属性以长整数的形式返回正确的元素数量。

算法

  • 步骤-1− 创建一个任意类型的数组,例如 int[] abc= new int[1000000000];

  • Step-2- 为数组元素赋值,例如 abc[0] = 1; abc[1] = 2; ... abc[999999999] = 1000000000;

  • Step-3- 使用 Length 属性获取数组中的元素数量。由于整数溢出,这将返回负数,因为该数组有超过 20 亿个元素。

  • Step-4- 使用 LongLength 属性以长整数形式获取数组中的元素总数。这将返回正确的数字,即 1000000000。

using System; class Program { static void Main(string[] args) { //initilize an array of 1000000000 elements int[] arr = new int[1000000000]; for (int i = 0; i < arr.Length; i++) //loop to assign values to array you can do this without loop but its a large array so loop is needed { arr[i] = i + 1; } Console.WriteLine("Length: " + arr.Length);// length property Console.WriteLine("LongLength: " + arr.LongLength);//longlength property } }
登录后复制

输出

Length: 1000000000
登录后复制

示例

您可以计算2维或3维数组中的元素数量。这有助于准确计算复杂数组中的元素数量。在这个例子中,我们将创建一个2维数组,并使用LongLength属性计算2维数组的元素数量。

  • 步骤 1- 声明一个 int 数据类型的二维数组,并用一些值进行初始化。

  • 第二步- 获取数组的LongLength属性。

  • 第三步- 将LongLength属性的值打印到控制台。

using System; class Program { static void Main(string[] args) { // Declare and initialize a 2-D array of integers int [,] a = new int [3,4] { {0, 1, 2, 3} , {4, 5, 6, 7} , {8, 9, 10, 11} }; // Get the LongLength property of the array long length = a.LongLength; // Print the value of the LongLength property to the console Console.WriteLine("The length of the array is: " + length); } }
登录后复制

输出

The length of the array is: 12
登录后复制

结论

当处理超出整数限制的大型数组时,C# 中数组的 LongLength 属性是一个有用的属性。它允许我们处理几乎任何大小的数组,唯一的限制是系统可用的内存量。它以长整型值的形式返回数组可以携带的元素数量。

以上是C# 中数组的 LongLength 属性的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!