Endians.java Source code

Java tutorial

Introduction

Here is the source code for Endians.java

Source

// : c12:Endians.java
// Endian differences and data storage.
// From 'Thinking in Java, 3rd ed.' (c) Bruce Eckel 2002
// www.BruceEckel.com. See copyright notice in CopyRight.txt.

import java.nio.ByteBuffer;
import java.nio.ByteOrder;

public class Endians {

    public static void main(String[] args) {
        ByteBuffer bb = ByteBuffer.wrap(new byte[12]);
        bb.asCharBuffer().put("abcdef");
        System.out.println(toString(bb.array()));
        bb.rewind();
        bb.order(ByteOrder.BIG_ENDIAN);
        bb.asCharBuffer().put("abcdef");
        System.out.println(toString(bb.array()));
        bb.rewind();
        bb.order(ByteOrder.LITTLE_ENDIAN);
        bb.asCharBuffer().put("abcdef");
        System.out.println(toString(bb.array()));

    }

    static String toString(byte[] a) {
        StringBuffer result = new StringBuffer("[");
        for (int i = 0; i < a.length; i++) {
            result.append(a[i]);
            if (i < a.length - 1)
                result.append(", ");
        }
        result.append("]");
        return result.toString();
    }
} ///:~