The clear() method of java.nio.ByteBuffer Class is used to clear this buffer. The position is set to zero, the limit is set to the capacity, and the mark is discarded. Invoke this method before using a sequence of channel-read or put operations to fill this buffer.
For example:
buf.clear(); // Prepare buffer for reading
in.read(buf); // Read data
This method does not actually erase the data in the buffer, but it is named as if it did because it will most often be used in situations in which that might as well be the case.
Syntax:
public ByteBuffer clear()
Return Value: This method returns this buffer.
Below are the examples to illustrate the clear() method:
Examples 1:
import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
try {
byte [] barr = { 10 , 20 , 30 , 40 };
ByteBuffer bb = ByteBuffer.wrap(barr);
bb.position( 2 );
bb.mark();
bb.position( 4 );
System.out.println( "position before reset: "
+ bb.position());
bb.clear();
System.out.println( "position after reset: "
+ bb.position());
}
catch (InvalidMarkException e) {
System.out.println( "new position is less than "
+ "the position we marked before " );
System.out.println( "Exception throws: " + e);
}
}
}
|
Output:
position before reset: 4
position after reset: 0
Examples 2:
import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
byte [] barr = { 10 , 20 , 30 , 40 };
ByteBuffer bb = ByteBuffer.wrap(barr);
bb.position( 3 );
System.out.println( "position before clear: "
+ bb.position());
bb.clear();
System.out.println( "position after clear: "
+ bb.position());
}
}
|
Output:
position before clear: 3
position after clear: 0
Reference: https://docs.oracle.com/javase/9/docs/api/java/nio/ByteBuffer.html#clear–
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!