【发布时间】:2013-09-14 08:55:54
【问题描述】:
简单问题:考虑到一个bool (true, false)和一个bit (1, 0)是一样的,那么在C#中将8个bool转换成一个字节的正确方法是什么?
例子:
真,真,真,真,真,真,真,真 == 11111111 == 255
真,假,假,假,假,假,假,假 == 10000000 == 128
假,假,假,假,假,假,假,假 == 00000000 == 0
以上是第一部分。我想创建一个扩展方法,像这样:
public static byte[] ToByteArray(this bool[] bitArray)
{
// stuff here
return byteArray;
}
结果必须是包含比 bool 数组少八倍的元素的 byteArray。
【问题讨论】:
-
您正在询问如何将 8 个布尔值转换为一个字节,但您的示例方法返回一个字节数组。
-
是的,就像我说的,byteArray 是第二部分,首先我需要将 8 个 bool 转换为 1 个字节
标签: c# optimization boolean byte