Java Arrays Methods β Complete Guide with Syntax, Examples, and Best Practices (2025)
Introduction β Why Learn Java Array Methods?
Arrays in Java are a fundamental data structure used to store multiple values in a single variable. However, working with raw arrays can be tedious unless you know how to manipulate them efficiently using array methods and utility functions.
With Java Array methods, you can:
- Search, sort, copy, and fill arrays quickly
- Improve your performance with optimized algorithms
- Leverage
java.util.Arraysfor real-world tasks
What Are Java Array Methods?
In Java, raw arrays are objects, but they donβt come with built-in methods. Instead, Java provides a utility class:
java.util.Arrays which offers a wide range of static helper methods for array manipulation.
Commonly Used Java Array Methods (via java.util.Arrays)
| Method | Purpose | Example |
|---|---|---|
sort(array) | Sorts the array | Arrays.sort(arr) |
copyOf(array, length) | Copies the array to new length | Arrays.copyOf(arr, 5) |
copyOfRange(arr, start, end) | Partial copy | Arrays.copyOfRange(arr, 2, 5) |
equals(arr1, arr2) | Checks equality | Arrays.equals(arr1, arr2) |
fill(array, value) | Fills array with specified value | Arrays.fill(arr, 0) |
toString(array) | Converts array to string | Arrays.toString(arr) |
binarySearch(array, key) | Searches for a value | Arrays.binarySearch(arr, 5) |
setAll(array, lambda) | Sets each element using lambda | Arrays.setAll(arr, i -> i * 2) |
stream(array) | Converts to Stream | Arrays.stream(arr) |
Java Arrays Method Examples
1. Arrays.sort() β Sort an Array
import java.util.Arrays;
int[] nums = {4, 1, 3, 9};
Arrays.sort(nums);
System.out.println(Arrays.toString(nums));
Output:
[1, 3, 4, 9]
Explanation: Sorts array in ascending order.
2. Arrays.copyOf() β Copy Array with New Length
int[] original = {1, 2, 3};
int[] copy = Arrays.copyOf(original, 5);
System.out.println(Arrays.toString(copy));
Output:
[1, 2, 3, 0, 0]
Explanation: Pads extra elements with default values.
3. Arrays.copyOfRange() β Copy a Range
int[] values = {10, 20, 30, 40, 50};
int[] sub = Arrays.copyOfRange(values, 1, 4);
System.out.println(Arrays.toString(sub));
Output:
[20, 30, 40]
Explanation: Copies elements from index 1 to 3 (end exclusive).
4. Arrays.equals() β Compare Two Arrays
int[] a = {1, 2, 3};
int[] b = {1, 2, 3};
System.out.println(Arrays.equals(a, b)); // true
Explanation: Compares element-by-element (not just reference).
5. Arrays.fill() β Set All Elements to One Value
int[] filled = new int[5];
Arrays.fill(filled, 7);
System.out.println(Arrays.toString(filled));
Output:
[7, 7, 7, 7, 7]
Explanation: Fills every element with 7.
6. Arrays.toString() β Print Array
int[] data = {1, 2, 3};
System.out.println(Arrays.toString(data));
Output:
[1, 2, 3]
Explanation: Converts array into readable string.
7. Arrays.binarySearch() β Fast Search (sorted arrays only)
int[] sorted = {1, 3, 5, 7};
int index = Arrays.binarySearch(sorted, 5);
System.out.println("Found at index: " + index);
Output:
Found at index: 2
Explanation: Performs binary search and returns index.
Note: Array must be sorted before using binarySearch().
8. Arrays.setAll() β Use Lambda to Fill Array
int[] square = new int[5];
Arrays.setAll(square, i -> i * i);
System.out.println(Arrays.toString(square));
Output:
[0, 1, 4, 9, 16]
Explanation: Fills array using a formula for each index.
9. Arrays.stream() β Convert to Stream for Functional Ops
int[] arr = {1, 2, 3, 4};
int sum = Arrays.stream(arr).sum();
System.out.println("Sum: " + sum);
Output:
Sum: 10
Explanation: Converts array to Stream API for advanced processing.
Table Summary: Arrays Method Categories
| Category | Methods |
|---|---|
| Sorting | sort() |
| Copying | copyOf(), copyOfRange() |
| Searching | binarySearch() |
| Filling | fill(), setAll() |
| Comparing | equals() |
| Converting | toString(), stream() |
Java Array Method Tips
- Always sort before using
binarySearch(). - Use
Arrays.toString()to print arrays (instead of loops). - For dynamic array-like behavior, prefer
ArrayList.
Summary β Java Arrays Utility Methods
Mastering java.util.Arrays methods allows you to:
- Perform fast array manipulations
- Avoid writing repetitive loops
- Leverage built-in optimized logic
From sorting and copying to advanced transformations with lambdas, these methods are vital for writing clean, efficient, and bug-free Java code.
FAQs on Java Arrays Methods
Why canβt I use arr.toString() directly?
It prints the object’s memory reference. Use Arrays.toString(arr) for readable output.
What happens if I copy an array to a smaller length?
Only the specified number of elements are copied. Extra values are truncated.
Can I use binarySearch() on an unsorted array?
No. The result is undefined unless the array is sorted.
Is Arrays.equals() deep or shallow?
It performs a shallow comparison for 1D arrays. For 2D arrays, use Arrays.deepEquals().
How do I resize an array in Java?
Java arrays are fixed-size. Use Arrays.copyOf() to simulate resizing.
Share Now :
