Color类与int类的相互转换
public Color color;
public int value = 0;
//Color类转换为int类
value = color.getRGB;
//int类转为Color
Color color = new Color(value);
二进制的移位操作 << 为移位符
下面是移位符的简单应用,把4个byte数 通过移位和或运算合成一个int数据
public int ByteToInt(byte byte1,byte byte2,byte byte3,byte byte4){
//注意,移位符(<<)的优先级高于与运算符(&),所以必须用括号阔起来
int value1 = (int)byte1&0xff; //不移位
int value2 = ((int)byte2&0xff) << 8; //左移8位
int value3 = ((int)byte3&0xff) << 16; //左移16位
int value4 = ((int)byte4&0xff) << 24; //左移24位
int value = value1|value2|value3|value4;
return value;
}
例如: byte1:00000000 byte2: 01000111
byte3: 10001111 byte4: 11100011
则可算出 value1:00000000 00000000 00000000 00000000
value2:00000000 00000000 01000111 00000000
value3:00000000 10001111 00000000 00000000
value4:11100011 00000000 00000000 00000000
value:11100011 10001111 01000111 00000000
public Color color;
public int value = 0;
//Color类转换为int类
value = color.getRGB;
//int类转为Color
Color color = new Color(value);
二进制的移位操作 << 为移位符
下面是移位符的简单应用,把4个byte数 通过移位和或运算合成一个int数据
public int ByteToInt(byte byte1,byte byte2,byte byte3,byte byte4){
//注意,移位符(<<)的优先级高于与运算符(&),所以必须用括号阔起来
int value1 = (int)byte1&0xff; //不移位
int value2 = ((int)byte2&0xff) << 8; //左移8位
int value3 = ((int)byte3&0xff) << 16; //左移16位
int value4 = ((int)byte4&0xff) << 24; //左移24位
int value = value1|value2|value3|value4;
return value;
}
例如: byte1:00000000 byte2: 01000111
byte3: 10001111 byte4: 11100011
则可算出 value1:00000000 00000000 00000000 00000000
value2:00000000 00000000 01000111 00000000
value3:00000000 10001111 00000000 00000000
value4:11100011 00000000 00000000 00000000
value:11100011 10001111 01000111 00000000