有没有更好的方法将一系列字节转换为一个Seq[Boolean],其中每个元素代表来自字节序列的一个位?
我目前正在使用byte2Bools,但它似乎有点过于繁重...
object Main extends App {
private def byte2Bools(b: Byte) =
(0 to 7).foldLeft(ArrayBuffer[Boolean]())((bs, i) => bs += isBitSet(b, i))
private def isBitSet(byte: Byte, bit: Int) =
((byte >> bit) & 1) == 1
val bytes = List[Byte](1, 2, 3)
val bools = bytes.flatMap(b => byte2Bools(b))
println(bools)
}
也许真正的问题是:byte2Bools的更好实现方式是什么?