基本数据类型中不常用的方法

Byte b = 8;
Byte t3 = Byte.valueOf("167", b);//把3进制的22转成10进制的8    即  64+48+7=119

int in3 = b.compareTo(t3);//两个Byte类型的数字比较(b-t3),差值返回int类型 -111

 

Short s = 1;

Short ss = Short.reverseBytes(s);//方法返回的值是得到2的补码表示指定的字节的顺序颠倒过来的short值。得到的结果是原来的256倍即s*256

 

 

Integer i = 0;
int r = Integer.highestOneBit(i); //i位负数则结果为-2147483648  i=0则结果为0 i为正数则结果为i与K=2*2^n(n=0,1,2...)最接近的数值K,i>=K?K:(K/2)

JDK的解析:

返回具有至多单个 1 位的 int 值,在指定的 int 值中最高位(最左边)的 1 位的位置。如果指定的值在其二进制补码表示形式中不具有 1 位,即它等于零,则返回零。

int l =Integer.lowestOneBit(i);

int l=Integer.numberOfLeadingZeros(i);

int l=Integer.numberOfTrailingZeros(i);

int l=Integer.bitCount(i);

int l=Integer.rotateLeft(i);

int l=Integer.rotateRight(i);

int l=Integer.reverse(i);

posted @ 2017-08-10 10:43  新手新手  阅读(108)  评论(0编辑  收藏  举报