FloatBuffer asReadOnlyBuffer() method in Java



A read-only float buffer can be created using the contents of a buffer with the method asReadOnlyBuffer() in the class java.nio.FloatBuffer. The new buffer cannot have any modifications as it is a read-only buffer. However, the capacity, positions, limits etc. of the new buffer are the same as the previous buffer.

A program that demonstrates this is given as follows −

Example

 Live Demo

import java.nio.*; import java.util.*; public class Demo {    public static void main(String[] args) {       int n = 5;       try {          FloatBuffer buffer = FloatBuffer.allocate(5);          buffer.put(4.5F);          buffer.put(1.2F);          buffer.put(3.9F);          buffer.put(7.5F);          buffer.put(5.8F);          buffer.rewind();          System.out.println("The Original FloatBuffer is: " + Arrays.toString(buffer.array()));          FloatBuffer roBuffer = buffer.asReadOnlyBuffer();          System.out.println("The ReadOnlyBuffer FloatBuffer is: ");          while (roBuffer.hasRemaining())          System.out.print(roBuffer.get() + " ");       } catch (IllegalArgumentException e) {          System.out.println("Error!!! IllegalArgumentException");       } catch (ReadOnlyBufferException e){          System.out.println("Error!!! ReadOnlyBufferException");       }    } }

The output of the above program is as follows −

Output

The Original FloatBuffer is: [4.5, 1.2, 3.9, 7.5, 5.8] The ReadOnlyBuffer FloatBuffer is: 4.5 1.2 3.9 7.5 5.8
Updated on: 2019-07-30T22:30:25+05:30

108 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements