Create a Subarray in Java

  1. Use the copyOfRange() to Create a Subarray From an Array in Java
  2. Use the arraycopy() to Create a Subarray From an Array in Java
Create a Subarray in Java

Arrays can be of any required length. While declaring an array, we allocate the memory to the array. We can also initialize the array during the declaration. At times, we may have to extract only some elements from an array.

In this tutorial, we will create a subarray from another array in Java.

Use the copyOfRange() to Create a Subarray From an Array in Java

Java provides us with a way to copy the elements of the array into another array. We can use the copyOfRange() method, which takes the primary array, a starting index, and an ending index as the parameters and copies that subarray to the destined array.

This function is a part of the java.util package. It was introduced after JDK 1.5.

See the following code.

import java.util.Arrays;
public class Main{

     public static void main(String []args){
         int a[] = {3, 5, 8, 4, 6, 7};
         int[] b = Arrays.copyOfRange(a, 2, 4);
         for (int i : b)
            System.out.print(i + "  ");
     }
}

Output:

8 4

Use the arraycopy() to Create a Subarray From an Array in Java

The arraycopy() function is available in the java.lang.System class. It takes arguments as the source array, starting index, destination array, ending index, and length.

For example,

import java.lang.*;
public class Main{

     public static void main(String []args){
         int[] a = new int[] {3, 5, 8, 4, 6, 7};
         int[] b = new int[3];
         System.arraycopy(a, 1, b, 0, 3); 
         for (int i : b)
            System.out.print(i + "  ");
     }
}

Output:

5 8 4

This will copy the elements from the specified start index to the end index into the desired array.

Related Article - Java Array

  • Concatenate Two Arrays in Java
  • Convert Byte Array in Hex String in Java
  • Remove Duplicates From Array in Java
  • Count Repeated Elements in an Array in Java
  • Natural Ordering in Java
  • Slice an Array in Java