DoubleBuffer flip() methods in Java with Examples

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–



