我有以下4个表示ARGB的整数值:
int value1 = 0xFF;
int value2 = 68;
int value3 = 68;
int value4 = 68;
Run Code Online (Sandbox Code Playgroud)
我想连接这些值,以便它们代表以下内容:
int test = 0xFF686868;
Run Code Online (Sandbox Code Playgroud)
我目前的做法是使用:
int test2 = 0xFF | value1 | value2 | value3;
Run Code Online (Sandbox Code Playgroud)
但是使用这种方法,test1和test2的整数值不匹配,我做错了什么?我只限于J2ME.
das*_*ght 10
你几乎就在那里:你需要做的就是将各个字节移到OR一起之前.
int test2 = (value1 << 24) | (value2 << 16) | (value3 << 8) | value4;
Run Code Online (Sandbox Code Playgroud)
不要忘记为你68想要的输出制作你的十六进制0xFF686868
int value2 = 0x68; // Add 0x to all three of the 68s
Run Code Online (Sandbox Code Playgroud)