我是靠谱客的博主 狂野音响,这篇文章主要介绍java最低位怎么取_java简单的二进制位操作,取位数据,设置位数据,现在分享给大家,希望可以做个参考。

1.取高位的数据

例如一个字节 byte b=0xE7; 二进制为 11100111;

要取出高三位 即“111”再转成int ,取为7;

/**

* 取一个字节的高几位bit

* @param b

* @param length

* @return

*/

public static int getLeftNum(byte b,int length) {

return b>>(8-length);

}

2.取低位的数据

需要取低几位,就先构建一个低几位全是1,其它位全是0的数据 ,即11111111往右移,然后保存需要的位数

例如,需要取低三位的,则把 11111111往右移8-3=5位,得到00000111

再用00000111&(与)原数据,则把原数据的前5位全置为0了

/**

* 取一个字节的低几位bit

* @param b

* @param length

* @return

*/

public static int getRightNum(byte b,int length) {

byte mv=(byte) (0xff>>(8-length));

return b&mv;

}

3.取中间几位

先从高位的方向取,再从低位的方向取

/**

* 取中间几位,包括 startIndex位和endIndex位

* @param b

* @param startIndex

* @param endIndex

* @return

*/

public static int getMidNum(byte b,int startIndex,int endIndex) {

byte i=(byte) getLeftNum(b,endIndex+1);//先取高几位

return getRightNum(i,endIndex-startIndex+1);//再取低几位

}

最后

以上就是狂野音响最近收集整理的关于java最低位怎么取_java简单的二进制位操作,取位数据,设置位数据的全部内容,更多相关java最低位怎么取_java简单内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(123)

评论列表共有 0 条评论

立即
投稿
返回
顶部