IntBuffer get(int, int[], int, int) in Java

get(int, int[], int, int): This method is available in java.nio.IntBuffer class of Java.

Syntax:

IntBuffer java.nio.IntBuffer.get(int index, int[] dst, int offset, int length)

This method takes four parameters one of type int array and the other three are of type int as its parameters. This method transfers length ints from this buffer into the given array, starting at the given index in this buffer and at the given offset in the array.

Note: The position of this buffer is unchanged.

Parameters: Four parameters are required for this method.

index: The index in this buffer from which the first int will be read; must be non-negative and less than the limit().

dst: The destination array.

offset: The offset within the array of the first int to be written; must be non-negative and less than dst.length.

length: The number of ints to be written to the given array; must be non-negative and no larger than the smaller of limit() - index and dst.length - offset.

Returns: This buffer.

Throws:

IndexOutOfBoundsException - If the preconditions on the index, offset, and length parameters do not hold

Approach 1: When no exceptions

Java

import java.nio.IntBuffer;

public class IntBufferget6 {
    public static void main(String[] args) {

        int array[] = { 1, 2, 3, 4 };
        IntBuffer lb = IntBuffer.wrap(array);

        int dst[] = { 1, 2, 3, 4 };
        int offset = 0;
        int length = 2;
        int index = 0;
        System.out.println(lb.get(index, dst, offset, length));
    }
}

Output:

java.nio.HeapIntBuffer[pos=0 lim=4 cap=4]


Approach 2: IndexOutOfBoundsException 

Java

import java.nio.IntBuffer;

public class IntBufferget6 {
    public static void main(String[] args) {

        int array[] = { 1, 2, 3, 4 };
        IntBuffer lb = IntBuffer.wrap(array);

        int dst[] = { 1, 2, 3, 4 };
        int offset = 0;
        int length = 2;
        int index = -1;
        System.out.println(lb.get(index, dst, offset, length));
    }
}

Output:

Exception in thread "main" java.lang.IndexOutOfBoundsException: Range [-1, -1 + 2) out of bounds for length 4 at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64) at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckFromIndexSize(Preconditions.java:82) at java.base/jdk.internal.util.Preconditions.checkFromIndexSize(Preconditions.java:343) at java.base/java.util.Objects.checkFromIndexSize(Objects.java:411) at java.base/java.nio.HeapIntBuffer.get(HeapIntBuffer.java:193)


Some more get methods.


get()


get(int)


get(int[])


get(int, int[])


get(int[], int, int)


No comments:

Post a Comment