package player.kent.chen.temp.learnnio; import java.nio.ByteBuffer; import java.nio.ByteOrder; public class PlayEndian { public static void main(String[] args) { ByteBuffer buffer = ByteBuffer.wrap(new byte[20]); buffer.asCharBuffer().put("12345"); printBufferAsArray(buffer); //1, 打印0 49 0 50 0 51 ... buffer.rewind(); //让buffer的位置移到最前 buffer.order(ByteOrder.BIG_ENDIAN); buffer.asCharBuffer().put("12345"); printBufferAsArray(buffer); //2, 打印结果将和#1一样,因为java默认的byte order就big endian buffer.rewind(); buffer.order(ByteOrder.LITTLE_ENDIAN); buffer.asCharBuffer().put("12345"); printBufferAsArray(buffer); //3,打印49 0 50 0 51 0 ... } private static void printBufferAsArray(ByteBuffer buffer) { for (byte b : buffer.array()) { System.out.print(b + " "); } System.out.println(); } }