永发信息网

java .int R = (red << 16) & 0x00FF0000;什么意思

答案:2  悬赏:10  手机版
解决时间 2021-03-02 22:03
  • 提问者网友:捧腹剧
  • 2021-03-02 06:46
0x是16进制,后面的00ff0000表示一个数的范围的话,那<<和&什么意思
最佳答案
  • 五星知识达人网友:痴妹与他
  • 2021-03-02 07:43
<< 、& 表示位操作,换算成2进制 然后向左移位
<<16 左移16位即如果 二进制数据 0011 向左移两位则变成1100 从原来的十进制数3变成十进制的12

&的是与操作 按位与 例如 输出结果分别为 0、1、0
所有的按位操作都是二进制数、十六进制数也一样操作前线准换成二进制数

System.out.println(1 & 0);
System.out.println(1 & 1);
System.out.println(0 & 0);

可以猜一下

// 0011 & 0100= 0000 十进制3&4=0
// 0100 & 0110= 0100 十进制4&6=4
System.out.println(3 & 4);// 十进制 3 二进制0011 十进制 4 二进制0100
System.out.println(4 & 6);// 十进制 4 二进制0100 十进制 6 二进制0110
全部回答
  • 1楼网友:玩世
  • 2021-03-02 08:18
<<16 表示将一个int类型的变量左移16位,&表示二进制按位与 再看看别人怎么说的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯