您的位置:首页 > 其它

>>>符号和&的使用获取多点触摸下的action值

2012-03-31 07:18 246 查看
/**

* 这个方法是对于进制之间转换,二进制 ,十六进制,十进制之间的相互转换

* @param args

*/

//以下是二进制 转换 16进制表

//0001 1 1000 8 1111 F

//0010 2 1001 9

//0011 3 1010 A

//0100 4 1011 B

//0101 5 1100 C

//0110 6 1101 D

//0111 7 1110 E

public static void main(String[] args) {

//十进制的261

int x=261;//转换为十六进制:105 261/16=16 于5 16=10 10拼接上余数5=105

//105: 0000 0001 0000 0101

//ff00 :1111 1111 0000 0000

//result: 0000 0001 0000 0000

//>>>8: 0000 0001

//0x00000105 0x000000 0001 0000 0101

// 0x000000 0001 0000 0000

// 0x 0000 0001 将二进制码向右移动8位

// 101/2 =10 二进制除以2相当于将二进制码向右移动一位

int y=0xff00;// 0x这个是十六进制码的前缀 ff00 转换为二进制=1111111100000000

// &二进制的按位与操作

// >>>这个符号表示向右移动指定位数(8位)

int z=(x&y)>>>8;

//x=261 十六:0105 二进制:0000000100000101

//y=0xff00: 十六:ff00 二进制:1111111100000000

//当x&y之后相对于x与y:上下相乘得到结果:0000000100000000

//然后:(x&y)>>>8右移动8位:00000001

System.out.println("手指编号是"+z);

int w=x&0x00ff;

//x=261 十六:0105 二进制:0000000100000101

//y=0x00ff: 十六:ff00 二进制:0000000011111111

//当x&y之后相对于x与y:上下相乘得到结果:0000000000000101 JVM自动将二进制转换十进制

System.out.println("手指动作是"+w);

}

通过以上的操作,我们将多点触摸下的手指动作做了简化操作,得到了我们想要的值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: