Arrays 如何设置字节数组的位

Arrays 如何设置字节数组的位,arrays,go,binary,boolean,bit,Arrays,Go,Binary,Boolean,Bit,我正在尝试使用位创建自定义字节数组。这意味着我要设置字节数组的位。 以下是演示: 位:=[]int{0,0,0,0,0,0,0,0,1,0,0,0,0,0,1} func ToByteArray(在[]整数中)([]字节,错误){ out:=make([]字节,len(in)/8,len(in)/8) 如果len(in)==0 | | len(in)%8!=0{ 返回,fmt.Errorf(“输入数组不能除以8”) } 对于i:=0;i

我正在尝试使用位创建自定义字节数组。这意味着我要设置字节数组的位。 以下是演示:

位:=[]int{0,0,0,0,0,0,0,0,1,0,0,0,0,0,1}
func ToByteArray(在[]整数中)([]字节,错误){
out:=make([]字节,len(in)/8,len(in)/8)
如果len(in)==0 | | len(in)%8!=0{
返回,fmt.Errorf(“输入数组不能除以8”)
}
对于i:=0;iout[cell]|=in[i]移位的结果是整数,而不是字节:

 out[cell] |= byte(in[i] << pos)

out[cell]|=byte(在[i]中)术语说明:代码中根本没有数组,只有片。