public class Demo {
public static void main(String[] args) {
ByteBuffer buf = ByteBuffer.allocate(4);
System.out.println("Default: " + buf.order().toString());
buf.putShort((short) 1);
buf.order(ByteOrder.LITTLE_ENDIAN);
System.out.println("Now: " + buf.order().toString());
buf.putShort((shor) 2);
buf.flip();
for(int i = 0; i < buf.limit(); i++){
System.out.println(buf.get() & 0xFF);
}
}
}
结果:
Default: BIG_ENDIAN
Now: LITTLE_ENDIAN
0
1
2
0
分配了4个字节,一个short是2个字节,右边是高位,1是高位存放,2是低位存放。