int a = 18874624;
int mask = 0xFF;
// 保存转换字节数组
byte[] index = new byte[4];
// 转换每2字节的结果
for (int i = 0; i < 4; i++) {
index[i] = (byte) ((a >> i * 8) & mask);
}
String s1 = new String(index);
System.out.println(s1);
打印出来的s1乱码了。
我的意思是字符串输出的还是18874624这个值
追答index[i] = (byte) ((a >> i * 8) & mask);这一句我不是很懂。
但index里面的值分别是:0,1,32,1