Skip to main content

Command Palette

Search for a command to run...

Arrays Class in Java

Updated
โ€ข4 min read
Arrays Class in Java
N

I am a Tech Enthusiast having 13+ years of experience in ๐ˆ๐“ as a ๐‚๐จ๐ง๐ฌ๐ฎ๐ฅ๐ญ๐š๐ง๐ญ, ๐‚๐จ๐ซ๐ฉ๐จ๐ซ๐š๐ญ๐ž ๐“๐ซ๐š๐ข๐ง๐ž๐ซ, ๐Œ๐ž๐ง๐ญ๐จ๐ซ, with 12+ years in training and mentoring in ๐’๐จ๐Ÿ๐ญ๐ฐ๐š๐ซ๐ž ๐„๐ง๐ ๐ข๐ง๐ž๐ž๐ซ๐ข๐ง๐ , ๐ƒ๐š๐ญ๐š ๐„๐ง๐ ๐ข๐ง๐ž๐ž๐ซ๐ข๐ง๐ , ๐“๐ž๐ฌ๐ญ ๐€๐ฎ๐ญ๐จ๐ฆ๐š๐ญ๐ข๐จ๐ง ๐š๐ง๐ ๐ƒ๐š๐ญ๐š ๐’๐œ๐ข๐ž๐ง๐œ๐ž. I have ๐’•๐’“๐’‚๐’Š๐’๐’†๐’… ๐’Ž๐’๐’“๐’† ๐’•๐’‰๐’‚๐’ 10,000+ ๐‘ฐ๐‘ป ๐‘ท๐’“๐’๐’‡๐’†๐’”๐’”๐’Š๐’๐’๐’‚๐’๐’” and ๐’„๐’๐’๐’…๐’–๐’„๐’•๐’†๐’… ๐’Ž๐’๐’“๐’† ๐’•๐’‰๐’‚๐’ 500+ ๐’•๐’“๐’‚๐’Š๐’๐’Š๐’๐’ˆ ๐’”๐’†๐’”๐’”๐’Š๐’๐’๐’” in the areas of ๐’๐จ๐Ÿ๐ญ๐ฐ๐š๐ซ๐ž ๐ƒ๐ž๐ฏ๐ž๐ฅ๐จ๐ฉ๐ฆ๐ž๐ง๐ญ, ๐ƒ๐š๐ญ๐š ๐„๐ง๐ ๐ข๐ง๐ž๐ž๐ซ๐ข๐ง๐ , ๐‚๐ฅ๐จ๐ฎ๐, ๐ƒ๐š๐ญ๐š ๐€๐ง๐š๐ฅ๐ฒ๐ฌ๐ข๐ฌ, ๐ƒ๐š๐ญ๐š ๐•๐ข๐ฌ๐ฎ๐š๐ฅ๐ข๐ณ๐š๐ญ๐ข๐จ๐ง๐ฌ, ๐€๐ซ๐ญ๐ข๐Ÿ๐ข๐œ๐ข๐š๐ฅ ๐ˆ๐ง๐ญ๐ž๐ฅ๐ฅ๐ข๐ ๐ž๐ง๐œ๐ž ๐š๐ง๐ ๐Œ๐š๐œ๐ก๐ข๐ง๐ž ๐‹๐ž๐š๐ซ๐ง๐ข๐ง๐ . I am interested in ๐ฐ๐ซ๐ข๐ญ๐ข๐ง๐  ๐›๐ฅ๐จ๐ ๐ฌ, ๐ฌ๐ก๐š๐ซ๐ข๐ง๐  ๐ญ๐ž๐œ๐ก๐ง๐ข๐œ๐š๐ฅ ๐ค๐ง๐จ๐ฐ๐ฅ๐ž๐๐ ๐ž, ๐ฌ๐จ๐ฅ๐ฏ๐ข๐ง๐  ๐ญ๐ž๐œ๐ก๐ง๐ข๐œ๐š๐ฅ ๐ข๐ฌ๐ฌ๐ฎ๐ž๐ฌ, ๐ซ๐ž๐š๐๐ข๐ง๐  ๐š๐ง๐ ๐ฅ๐ž๐š๐ซ๐ง๐ข๐ง๐  new subjects.

The Arrays class in Java is part of the java.util package and provides utility methods for working with arrays, including sorting, searching, comparing, and filling elements.

Overview of Arrays Class

  • The Arrays class is a final class (cannot be extended).

  • It contains static methods for performing operations on arrays.

  • It works with primitive and object arrays.

  • Provides enhanced performance for array manipulations.

Commonly Used Methods in Arrays Class

MethodDescription
sort(array)Sorts the array in ascending order.
binarySearch(array, key)Searches for a key using binary search (sorted array required).
equals(arr1, arr2)Compares two arrays for equality.
fill(array, value)Fills the entire array with a specific value.
copyOf(array, newLength)Copies an array and resizes it.
toString(array)Converts the array to a readable string format.
asList(array)Converts an array into a List.
hashCode(array)Returns a hash code based on array contents.

Examples of Arrays Class

Sorting an Array (sort())

The sort() method sorts an array in ascending order.

Example - Sorting an Integer Array

import java.util.Arrays;

public class ArraysSortExample {
    public static void main(String[] args) {
        int[] numbers = {5, 2, 8, 1, 3};

        Arrays.sort(numbers);

        System.out.println(Arrays.toString(numbers)); // Output: [1, 2, 3, 5, 8]
    }
}

Sorting an Array of Strings

import java.util.Arrays;

public class StringArraySort {
    public static void main(String[] args) {
        String[] names = {"Zara", "Alice", "Bob"};

        Arrays.sort(names);

        System.out.println(Arrays.toString(names)); // Output: [Alice, Bob, Zara]
    }
}

Sorting a Subarray

javaCopyEditint[] arr = {10, 5, 20, 15, 30};
Arrays.sort(arr, 1, 4);
System.out.println(Arrays.toString(arr)); // Output: [10, 5, 15, 20, 30]

Here, only elements from index 1 to 3 (excluding 4) are sorted.

Searching in an Array (binarySearch())

binarySearch() is used to find an element in a sorted array.

Example - Finding an Element

import java.util.Arrays;

public class BinarySearchExample {
    public static void main(String[] args) {
        int[] arr = {1, 3, 5, 7, 9};

        int index = Arrays.binarySearch(arr, 5);
        System.out.println("Element found at index: " + index); // Output: 2
    }
}

๐Ÿ”น Note: If the element is not found, it returns -(insertion point) - 1.

Comparing Arrays (equals())

equals(arr1, arr2) checks if two arrays are identical.

import java.util.Arrays;

public class CompareArrays {
    public static void main(String[] args) {
        int[] arr1 = {1, 2, 3};
        int[] arr2 = {1, 2, 3};
        int[] arr3 = {3, 2, 1};

        System.out.println(Arrays.equals(arr1, arr2)); // Output: true
        System.out.println(Arrays.equals(arr1, arr3)); // Output: false
    }
}

Filling an Array (fill())

fill() assigns the same value to all elements in the array.

import java.util.Arrays;

public class FillArray {
    public static void main(String[] args) {
        int[] arr = new int[5];

        Arrays.fill(arr, 7); // Fill all elements with 7

        System.out.println(Arrays.toString(arr)); // Output: [7, 7, 7, 7, 7]
    }
}

You can also fill a specific range:

Arrays.fill(arr, 1, 4, 10);

This fills index 1 to 3 with 10.


6. Copying Arrays (copyOf(), copyOfRange())

  • copyOf(array, newLength): Creates a new array with a specified length.

  • copyOfRange(array, from, to): Copies a specific range.

import java.util.Arrays;

public class CopyArray {
    public static void main(String[] args) {
        int[] original = {10, 20, 30, 40, 50};

        int[] copied = Arrays.copyOf(original, 3);

        System.out.println(Arrays.toString(copied)); // Output: [10, 20, 30]
    }
}

Example - Copying a Range

int[] copiedRange = Arrays.copyOfRange(original, 1, 4);
System.out.println(Arrays.toString(copiedRange)); // Output: [20, 30, 40]

Converting Arrays to String (toString())

This method is used for displaying array elements.

Example

import java.util.Arrays;

public class ArrayToString {
    public static void main(String[] args) {
        String[] fruits = {"Apple", "Banana", "Cherry"};

        System.out.println(Arrays.toString(fruits)); // Output: [Apple, Banana, Cherry]
    }
}

Converting Arrays to List (asList())

asList() converts an array into a List.

import java.util.Arrays;
import java.util.List;

public class ArrayToList {
    public static void main(String[] args) {
        String[] colors = {"Red", "Green", "Blue"};

        List<String> colorList = Arrays.asList(colors);

        System.out.println(colorList); // Output: [Red, Green, Blue]
    }
}

๐Ÿ”น Note: The list returned is fixed-size, meaning you cannot add() or remove() elements.

Generating Hash Code (hashCode())

hashCode() returns a hash code for an array, useful in hash-based collections.

import java.util.Arrays;

public class ArrayHashCode {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3};

        System.out.println(Arrays.hashCode(arr)); // Example Output: 30817
    }
}

Multidimensional Arrays Support

The deepToString() and deepEquals() methods handle nested arrays.

Converting 2D Array to String

import java.util.Arrays;

public class MultiDimensionalArray {
    public static void main(String[] args) {
        int[][] matrix = { {1, 2}, {3, 4} };

        System.out.println(Arrays.deepToString(matrix));
        // Output: [[1, 2], [3, 4]]
    }
}

Conclusion

  • The Arrays class simplifies sorting, searching, filling, and comparing arrays.

  • It is a high-performance alternative to writing custom array operations.

  • Ideal for working with primitive & object arrays.

More from this blog

Naveen P.N's Tech Blog

94 posts