The flip() method of java.nio.ShortBuffer Class is used to flip this buffer. By flipping this buffer, it meant that the buffer will be trimmed to the current position and the 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 ShortBuffer flip()
Return Value: This method returns the flipped ShortBuffer instance.
Below are the examples to illustrate the flip() method:
Examples 1:
// 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 short array        short[] db            = { 10, 20, 30 };          // wrap the short array        // into ShortBuffer        // using wrap() method        ShortBuffer shortBuffer            = ShortBuffer.wrap(db);          // set position at index 1        shortBuffer.position(1);          // print the buffer        System.out.println(            "Buffer before flip: "            + Arrays.toString(                  shortBuffer.array())            + "\nPosition: "            + shortBuffer.position()            + "\nLimit: "            + shortBuffer.limit());          // Flip the Buffer        // using flip() method        shortBuffer.flip();          // print the buffer        System.out.println(            "\nBuffer after flip: "            + Arrays.toString(                  shortBuffer.array())            + "\nPosition: "            + shortBuffer.position()            + "\nLimit: "            + shortBuffer.limit());    }} |
Buffer before flip: [10, 20, 30] Position: 1 Limit: 3 Buffer after flip: [10, 20, 30] Position: 0 Limit: 1
Examples 2:
// Java program to demonstrate// flip() method  import java.nio.*;import java.util.*;  public class GFG {    public static void main(String[] args)    {          // defining and allocating ShortBuffer        // using allocate() method        ShortBuffer shortBuffer            = ShortBuffer.allocate(4);          // put short value in ShortBuffer        // using put() method        shortBuffer.put((short)20);        shortBuffer.put((short)345);          // set position at index 1        shortBuffer.position(1);          // print the buffer        System.out.println(            "Buffer before flip: "            + Arrays.toString(                  shortBuffer.array())            + "\nPosition: "            + shortBuffer.position()            + "\nLimit: "            + shortBuffer.limit());          // Flip the Buffer        // using flip() method        shortBuffer.flip();          // print the buffer        System.out.println(            "\nBuffer after flip: "            + Arrays.toString(                  shortBuffer.array())            + "\nPosition: "            + shortBuffer.position()            + "\nLimit: "            + shortBuffer.limit());    }} |
Buffer before flip: [20, 345, 0, 0] Position: 1 Limit: 4 Buffer after flip: [20, 345, 0, 0] Position: 0 Limit: 1
Reference: https://docs.oracle.com/javase/9/docs/api/java/nio/ShortBuffer.html#flip–
