int n= 0x234;
这实际上会将564
存储在n中,但如果我想访问并操作2,3和4怎么办?
十六进制数非常容易获取:要访问数字k
的值,请从右侧进行计数,将该值向右移动4*k
,然后使用掩码& 0x0F
。
int n= 0x234;
int digit2 = (n >> 2*4) & 0x0F; // Gives you 2
int digit1 = (n >> 1*4) & 0x0F; // Gives you 3
int digit0 = (n >> 0*4) & 0x0F; // Gives you 4
ByteBuffer bb = ByteBuffer.allocate(4);
bb.putInt(0x234);
for (byte b : bb.array()) {
System.out.print(String.format("%02X ", b) + " "); //00 00 02 34
}
f
做什么? - fge0x123 + 0x345 = 0x468
291 + 837 = 11280x468 = 1128 - wbest