Arrays.fill() in Java with Examples

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 arrayimport 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.zambiatek.com or mail your article to contribute@zambiatek.com. See your article appearing on the Lazyroar main page and help other Geeks.



