The flip() method of java.nio.DoubleBuffer Class is used to flip this buffer. By flipping this buffer, it meant that the buffer will be trimmed to the current position and then the position will be changed to zero. During this process, if any mark is there on the buffer, then that mark will be automatically discarded.
Syntax:
public final DoubleBuffer flip()
Return Value: This method returns the flipped DoubleBuffer instance.
Below are the examples to illustrate the flip() method:
Examples 1:
Java
// Java program to demonstrate // flip() method import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// Declare and initialize
// the double array
double [] db
= { 10.56 , 20.34 , 30.78 };
// wrap the double array
// into DoubleBuffer
// using wrap() method
DoubleBuffer doubleBuffer
= DoubleBuffer.wrap(db);
// set position at index 1
doubleBuffer.position( 1 );
// print the buffer
System.out.println(
"Buffer before flip: "
+ Arrays.toString(
doubleBuffer.array())
+ "\nPosition: "
+ doubleBuffer.position()
+ "\nLimit: "
+ doubleBuffer.limit());
// Flip the Buffer
// using flip() method
doubleBuffer.flip();
// print the buffer
System.out.println(
"\nBuffer after flip: "
+ Arrays.toString(
doubleBuffer.array())
+ "\nPosition: "
+ doubleBuffer.position()
+ "\nLimit: "
+ doubleBuffer.limit());
}
} |
Output:
Buffer before flip: [10.56, 20.34, 30.78] Position: 1 Limit: 3 Buffer after flip: [10.56, 20.34, 30.78] Position: 0 Limit: 1
Examples 2:
Java
// Java program to demonstrate // flip() method import java.nio.*;
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// defining and allocating DoubleBuffer
// using allocate() method
DoubleBuffer doubleBuffer
= DoubleBuffer.allocate( 4 );
// put double value in DoubleBuffer
// using put() method
doubleBuffer.put( 20.4 );
doubleBuffer.put( 34.5 );
// set position at index 1
doubleBuffer.position( 1 );
// print the buffer
System.out.println(
"Buffer before flip: "
+ Arrays.toString(
doubleBuffer.array())
+ "\nPosition: "
+ doubleBuffer.position()
+ "\nLimit: "
+ doubleBuffer.limit());
// Flip the Buffer
// using flip() method
doubleBuffer.flip();
// print the buffer
System.out.println(
"\nBuffer after flip: "
+ Arrays.toString(
doubleBuffer.array())
+ "\nPosition: "
+ doubleBuffer.position()
+ "\nLimit: "
+ doubleBuffer.limit());
}
} |
Output:
Buffer before flip: [20.4, 34.5, 0.0, 0.0] Position: 1 Limit: 4 Buffer after flip: [20.4, 34.5, 0.0, 0.0] Position: 0 Limit: 1
Reference: https://docs.oracle.com/javase/9/docs/api/java/nio/DoubleBuffer.html#flip–