3

如何检查 byte[] 是否仅包含 0?如果它只包含零,我不想通过网络发送数组:

byte[] bytesToBeSend = e.GetAudioSamples;

// Send test data to the remote device.
Send(client, bytesToBeSend);
4

2 回答 2

12

在您的请求之前插入此测试Send并使用if测试:

bool hasAllZeroes = bytesToBeSend.All(singleByte => singleByte == 0);

if (!hasAllZeroes) {
    Send(client, bytesToBeSend);
}

确保您已包含 LINQ:

using System.Linq;
于 2013-09-17T04:04:36.120 回答
8

一种选择是检查每个字节是否为零,但我们可以检查是否存在非零字节。如果那是真的,我们可以发送。这会很快。

if(bytesToBeSend.Any(b => b!=0))
  Send(client, bytesToBeSend);
于 2013-09-17T04:18:27.160 回答