ByteBuffer
Use ByteBuffer for non-byte Java types buffering
In this example we will demonstrate how to perform non-byte Java types buffering using a ByteBuffer in Java. In particular we are going to show you how to use a ByteBuffer to store the following Java types :
- char
- short
- int
- long
- float
- double
In all cases above we are going to use the standard API methods provided by the ByteBuffer class as shown in the code snippet below.
package com.javacodegeeks.snippets.core;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.DoubleBuffer;
import java.nio.FloatBuffer;
import java.nio.IntBuffer;
import java.nio.LongBuffer;
import java.nio.ShortBuffer;
public class UseByteBufferForNonByteJavaTypesBuffering {
public static void main(String[] args) {
// Allocate a new non-direct byte buffer with a 50 byte capacity
// set this to a big value to avoid BufferOverflowException
ByteBuffer buf = ByteBuffer.allocate(50);
// Creates a view of this byte buffer as a char buffer.
CharBuffer cbuf = buf.asCharBuffer();
// Creates a view of this byte buffer as a short buffer.
ShortBuffer sbuf = buf.asShortBuffer();
// Creates a view of this byte buffer as a short buffer.
IntBuffer ibuf = buf.asIntBuffer();
// Creates a view of this byte buffer as a short buffer.
LongBuffer lbuf = buf.asLongBuffer();
// Creates a view of this byte buffer as a float buffer.
FloatBuffer fbuf = buf.asFloatBuffer();
// Creates a view of this byte buffer as a double buffer.
DoubleBuffer dbuf = buf.asDoubleBuffer();
}
}
This was an example of how to use a ByteBuffer for non-byte Java type buffering in Java.


