在 C# 中将 2D 数组归零的最快方法

本文关键字:方法 归零 数组 中将 2D | 更新日期: 2023-09-27 18:37:18

>我有一个 2D 数组,我想清除它并重置为 0 值。我知道如何使用Array.Clear()清除向量(1D 数组),但我不知道清除 2D 矩阵的最佳方法。

double D = new double[10];  
Array.Clear(D, 0, D.Length);

如何清除 2D N x M 数组

double D[,] = new double[N,M];

感谢您提供的任何帮助。

在 C# 中将 2D 数组归零的最快方法

Array.Clear也适用于多维数组:

double[,] D = new double[M,N];
Array.Clear(D, 0, D.Length);

请注意,无需自己计算长度,因为 Length 属性返回元素的总数,而不考虑维度数:

一个 32 位整数,表示 Array 所有维度中的元素总数;如果数组中没有元素,则为零。

您可以使用相同的方法,但可能必须计算实际length参数值:

double D[,] = new double[N,M];
Array.Clear(D, 0, M*N);

我会使用 M*N,因为它更具可读性,而且我不知道 2 暗光数组Length属性返回什么。

只需重新分配它。

double D[,] = new double[N,M];

创建一个空的 2D 数组。