如何检查数组是否包含任何项目或完全为空?

use*_*327 5 c# arrays

如果我定义一个整数数组:

int[] a = new int[13];
Run Code Online (Sandbox Code Playgroud)

并且我没有向其中插入任何项目,我如何知道数组 a 是否包含任何项目或完全为空?我是否必须迭代所有 a.Length 索引?在列表中

List<int> b = new List<int>();
Run Code Online (Sandbox Code Playgroud)

如果我检查:

if(b.Count == 0)
{
    // The list does not contain any items.
}
Run Code Online (Sandbox Code Playgroud)

有没有等效的方法来检查数组?我在互联网上发现检查数组是否为空或空。就我而言,我确信该数组不为空。我只是想知道它是否包含任何项目。我不关心数组中的哪个位置,也不关心具体是哪个项目。预先非常感谢您。

fub*_*ubo 4

int[] a = new int[13]; // [0,0,0,0,0,0,0,0,0,0,0,0,0]
Run Code Online (Sandbox Code Playgroud)

分配一个包含 13 个项目的数组。每一项的值为0default(int)

所以你必须检查

bool isEmpty =  a.All(x => x == default(int));
Run Code Online (Sandbox Code Playgroud)

如果0是数组中的有效值,则应使用可空类型:

int?[] a = new int?[13]; // [null,null,null,null,null,null,null,null,null,null,null,null,null]
bool isEmpty =  a.All(x => !x.HasValue);
Run Code Online (Sandbox Code Playgroud)