C# 如何检查字节[]是否只包含零?
如何检查字节[]是否只包含0?如果阵列仅包含零,我不希望通过网络发送该阵列:C# 如何检查字节[]是否只包含零?,c#,.net,sockets,tcp,C#,.net,Sockets,Tcp,如何检查字节[]是否只包含0?如果阵列仅包含零,我不希望通过网络发送该阵列: byte[] bytesToBeSend = e.GetAudioSamples; // Send test data to the remote device. Send(client, bytesToBeSend); 在发送请求之前插入此测试,如果测试: bool hasAllZeroes = bytesToBeSend.All(singleByte => singleByte == 0); if (!
byte[] bytesToBeSend = e.GetAudioSamples;
// Send test data to the remote device.
Send(client, bytesToBeSend);
在
发送
请求之前插入此测试,如果测试:
bool hasAllZeroes = bytesToBeSend.All(singleByte => singleByte == 0);
if (!hasAllZeroes) {
Send(client, bytesToBeSend);
}
确保您已包括LINQ:
using System.Linq;
一个选项是检查每个字节是否等于零,但我们可以检查是否存在非零字节。如果这是真的,我们可以发送。这会很快
if(bytesToBeSend.Any(b => b!=0))
Send(client, bytesToBeSend);
请注意,委托(lambda表达式)非常慢。使用foreach循环测试数组元素将具有更高的性能,但lambda代码更具可读性。