java.util.Arrays.fill() method is in java.util.Arrays class. This method assigns the specified data type value to each element of the specified range of the specified array.
Syntax: // Makes all elements of a[] equal to "val" public static void fill(int[] a, int val) // Makes elements from from_Index (inclusive) to to_Index // (exclusive) equal to "val" public static void fill(int[] a, int from_Index, int to_Index, int val) This method doesn't return any value.
Exceptions it Throws: IllegalArgumentException - if from_Index > to_Index ArrayIndexOutOfBoundsException - if from_Index a.length
Examples:
We can fill entire array.
// Java program to fill a subarray of given array import java.util.Arrays;   public class Main {     public static void main(String[] args)     {         int ar[] = { 2 , 2 , 1 , 8 , 3 , 2 , 2 , 4 , 2 };           // To fill complete array with a particular         // value         Arrays.fill(ar, 10 );         System.out.println( "Array completely filled" +                   " with 10\n" + Arrays.toString(ar));     } } |
Output:
Array completely filled with 10 [10, 10, 10, 10, 10, 10, 10, 10, 10]
We can fill part of array.
// Java program to fill a subarray array with // given value. import java.util.Arrays;   public class Main {     public static void main(String[] args)     {         int ar[] = { 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 };           // Fill from index 1 to index 4.         Arrays.fill(ar, 1 , 5 , 10 );              System.out.println(Arrays.toString(ar));     } } |
Output:
[2, 10, 10, 10, 10, 2, 2, 2, 2]
We can fill a multidimensional array
We can use a loop to fill a multidimensional array.
1)Fill 2D Array
// Java program to fill a multidimensional array with // given value. import java.util.Arrays;   public class Main {     public static void main(String[] args)     {         int [][]ar = new int [ 3 ][ 4 ];           // Fill each row with 10.         for ( int [] row : ar)             Arrays.fill(row, 10 );              System.out.println(Arrays.deepToString(ar));     } } |
Output:
[[10, 10, 10, 10], [10, 10, 10, 10], [10, 10, 10, 10]]
2) Fill 3D Array
// Java program to fill a multidimensional array with // given value.   import java.util.Arrays;   class GFG {       public static void main(String[] args) {         int [][][] ar = new int [ 3 ][ 4 ][ 5 ];           // Fill each row with -1.         for ( int [][] row : ar) {             for ( int [] rowColumn : row) {                 Arrays.fill(rowColumn, - 1 );             }         }           System.out.println(Arrays.deepToString(ar));     } } |
Output:
[[[-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1]], [[-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1]], [[-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1], [-1, -1, -1, -1, -1]]]
This article is contributed by Mohit Gupta. If you like Lazyroar and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the Lazyroar main page and help other Geeks.