📌  相关文章
📜  C#|数组中存在的元素总数(1)

📅  最后修改于: 2023-12-03 15:00:15.945000             🧑  作者: Mango

C# | 数组中存在的元素总数

在C#中,数组是一种用于存储相同类型的元素的数据结构。有时候,我们需要计算数组中实际存在的元素的总数,而不是数组的长度。本文将介绍如何通过不同的方法来计算数组中存在的元素总数。

方法 1: 循环遍历

首先,我们可以使用循环遍历数组并计算数组中非空元素的数量。以下是一个示例代码片段:

int[] array = { 1, 2, 3, 0, 0, 0 };  // 示例数组
int count = 0;  // 计数器

foreach (int element in array)
{
    if (element != 0)
    {
        count++;
    }
}

Console.WriteLine($"数组中存在的元素总数为: {count}");  // 输出结果

方法 2: 使用 LINQ

其次,我们可以使用 LINQ(Language Integrated Query)来计算数组中的非空元素数量。以下是一个示例代码片段:

int[] array = { 1, 2, 3, 0, 0, 0 };  // 示例数组

int count = array.Count(element => element != 0);

Console.WriteLine($"数组中存在的元素总数为: {count}");  // 输出结果

方法 3: 使用 Array 类的 FindAll 方法

另外,我们可以使用 Array 类的 FindAll 方法来筛选出非空元素,然后计算它们的数量。以下是一个示例代码片段:

int[] array = { 1, 2, 3, 0, 0, 0 };  // 示例数组

int[] nonEmptyArray = Array.FindAll(array, element => element != 0);
int count = nonEmptyArray.Length;

Console.WriteLine($"数组中存在的元素总数为: {count}");  // 输出结果

方法 4: 使用 Array 类的 Resize 方法

最后,我们可以使用 Array 类的 Resize 方法来调整数组的大小,然后计算新数组的长度。Resize 方法会删除数组末尾的空元素。以下是一个示例代码片段:

int[] array = { 1, 2, 3, 0, 0, 0 };  // 示例数组

Array.Resize(ref array, Array.FindLastIndex(array, element => element != 0) + 1);
int count = array.Length;

Console.WriteLine($"数组中存在的元素总数为: {count}");  // 输出结果

以上是四种常见的方法来计算数组中存在的元素总数。根据你的具体需求和喜好,可以选择其中一种方法来实现。希望本文能对你有所帮助!