ShortBuffer rewind() method in Java with Examples

The rewind() method of java.nio.ShortBuffer Class is used to rewind this buffer. By rewinding this Buffer, the following actions are taken:
- Current position is set to zero
- the mark is discarded, if any, but the mark value is unchanged.
Syntax:
public ShortBuffer rewind()
Parameter: This method do not accept any parameter.
Return Value: This method returns this buffer.
Below are the examples to illustrate the rewind() method:
Examples 1:
// Java program to demonstrate// rewind() 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)10);        shortBuffer.put((short)20);          // print the short buffer        System.out.println(            "Buffer before operation: "            + Arrays.toString(                  shortBuffer.array())            + "\nPosition: "            + shortBuffer.position()            + "\nLimit: "            + shortBuffer.limit());          // rewind the Buffer        // using rewind() method        shortBuffer.rewind();          // print the shortbuffer        System.out.println(            "\nBuffer after operation: "            + Arrays.toString(                  shortBuffer.array())            + "\nPosition: "            + shortBuffer.position()            + "\nLimit: "            + shortBuffer.limit());    }} |
Output:
Buffer before operation: [10, 20, 0, 0] Position: 2 Limit: 4 Buffer after operation: [10, 20, 0, 0] Position: 0 Limit: 4
Examples 2:
// Java program to demonstrate// rewind() 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(5);          // put short value in shortBuffer        // using put() method        shortBuffer.put((short)10);        shortBuffer.put((short)20);        shortBuffer.put((short)30);          // mark will be going to discarded by rewind()        shortBuffer.mark();          // print the buffer        System.out.println(            "Buffer before operation: "            + Arrays.toString(                  shortBuffer.array())            + "\nPosition: "            + shortBuffer.position()            + "\nLimit: "            + shortBuffer.limit());          // Rewind the Buffer        // using rewind() method        shortBuffer.rewind();          // print the buffer        System.out.println(            "\nBuffer after operation: "            + Arrays.toString(                  shortBuffer.array())            + "\nPosition: "            + shortBuffer.position()            + "\nLimit: "            + shortBuffer.limit());    }} |
Output:
Buffer before operation: [10, 20, 30, 0, 0] Position: 3 Limit: 5 Buffer after operation: [10, 20, 30, 0, 0] Position: 0 Limit: 5
Reference: https://docs.oracle.com/javase/9/docs/api/java/nio/ShortBuffer.html#rewind–



