在一些java程序中需要我们做一些按位判断,其实就是取任意位数(第m位到第n位)进行操作。


int[] a = { 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1 };

如果给出一个二进制数组需要我们将其中第1位到第5位的二进制转换成十进制,我们可以做如下操作

此处可建立for循环,进行取出位数操作

String str = ""; int i; for (i = 1; i < 6; i ) str=str a[i];

int sjz = Integer.parseInt(str, 2);


所需代码如图所示,用的关键代码很少,但却对我们所要做的工作有很大帮助,方便快捷。

java将二进制数转换成十进制(java小技巧之二进制数组取任意位数转十进制整数)(1)

java二进制数组转十进制整形

java将二进制数转换成十进制(java小技巧之二进制数组取任意位数转十进制整数)(2)

代码运行结果

这其实也是一个模板,以后需要将二进制数组取固定位数转十进制整数时,可以直接套用。

实现如下转换:

二进制数组——二进制字符串——十进制整形

,