如何从字节中获取某个位置的位值?

如果我有一个字节,该方法将如何在某个位置取回一个位?

这是我所知道的,我认为它不起作用。

public byte getBit(int position) {

return (byte) (ID >> (position - 1));

}

ID我要从中检索信息的字节的名称在哪里。

回答:

public byte getBit(int position)

{

return (ID >> position) & 1;

}

按位置向右移动ID将使#position位在数字中最靠右的位置。将其与按位&与1结合将告诉您是否设置了该位。

position = 2

ID = 5 = 0000 0101 (in binary)

ID >> position = 0000 0001

0000 0001 & 0000 0001( 1 in binary ) = 1, because the furthest right bit is set.

以上是 如何从字节中获取某个位置的位值? 的全部内容, 来源链接: utcz.com/qa/427024.html

回到顶部