Java Arrays fill(Object[], Object) Method



Description

The Java Arrays fill(Object[] a, Object val) method assigns the specified Object value to each element of the specified array of Objects.

Declaration

Following is the declaration for java.util.Arrays.fill(Object[] a, Object val) method

public static void fill(Object[] a, Object val)

Parameters

  • a − This is the array to be filled.

  • val − This is the value to be stored in all elements of the array.

Return Value

This method does not return any value.

Exception

  • ArrayStoreException − if the specified value is not of a runtime type that can be stored in the specified array.

Java Arrays fill(Object[] a, int fromIndex, int toIndex, Object val) Method

Description

The Java Arrays fill(Object[] a, int fromIndex, int toIndex, Object val) method assigns the specified Object value to each element of the specified range of the specified array of Objects.The range to be filled extends from index fromIndex, inclusive, to index toIndex, exclusive. (If fromIndex==toIndex, the range to be filled is empty.)

Declaration

Following is the declaration for java.util.Arrays.fill(Object[] a, int fromIndex, int toIndex, Object val) method

public static void fill(Object[] a, int fromIndex, int toIndex, Object val)

Parameters

  • a − This is the array to be filled.

  • fromIndex − This is the index of the first element (inclusive) to be filled with the specified value.

  • toIndex − This is the index of the last element (exclusive) to be filled with the specified value.

  • val − This is the value to be stored in all elements of the array.

Return Value

This method does not return any value.

Exception

  • ArrayIndexOutOfBoundsException − if fromIndex < 0 or toIndex > a.length

  • IllegalArgumentException − if fromIndex > toIndex

  • ArrayStoreException − if the specified value is not of a runtime type that can be stored in the specified array.

Filling the Array of Objects with Given Values Example

The following example shows the usage of Java Arrays fill(Object[], Object) method. First, we've created an array of Objects and its elements are printed. Using fill(Object[], Object) method, we're filling the array with a give value and then updated array elements are printed again.

package com.tutorialspoint;

import java.util.Arrays;

public class ArrayDemo {
   public static void main(String[] args) {

      // initializing Student array
      Student arr[] = { new Student(1, "Julie"), new Student(3, "Adam"), new Student(2, "Robert") };

      // let us print the values
      System.out.println("Actual values: ");
      for (Student value : arr) {
         System.out.println("Value = " + value);
      }

      Student replacement = new Student(0, "");
      
      // using fill for placing value
      Arrays.fill(arr, replacement);

      // let us print the values
      System.out.println("New values after using fill() method: ");
      for (Student value : arr) {
         System.out.println("Value = " + value);
      }
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Actual values: 
Value = [ 1, Julie ]
Value = [ 3, Adam ]
Value = [ 2, Robert ]
New values after using fill() method: 
Value = [ 0,  ]
Value = [ 0,  ]
Value = [ 0,  ]

Filling the Sub-Array of Objects with Given Values Example

The following example shows the usage of Java Arrays fill(Object[], int, int, Object) method. First, we've created an array of Objects and its elements are printed. Using fill(Object[], int, int, Object) method method, we're filling the array with a give value and then updated array elements are printed again.

package com.tutorialspoint;

import java.util.Arrays;

public class ArrayDemo {
   public static void main(String[] args) {

      // initializing Student array
      Student arr[] = { new Student(1, "Julie"), new Student(3, "Adam"), new Student(2, "Robert") };

      // let us print the values
      System.out.println("Actual values: ");
      for (Student value : arr) {
         System.out.println("Value = " + value);
      }

      Student replacement = new Student(0, "");
      
      // using fill for placing value from index 0 to 3
      Arrays.fill(arr, 0, 3, replacement);

      // let us print the values
      System.out.println("New values after using fill() method: ");
      for (Student value : arr) {
         System.out.println("Value = " + value);
      }
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Actual values: 
Value = [ 1, Julie ]
Value = [ 3, Adam ]
Value = [ 2, Robert ]
New values after using fill() method: 
Value = [ 0,  ]
Value = [ 0,  ]
Value = [ 0,  ]

Filling the Sub-Array of Objects with Given Values Example

The following example shows the usage of Java Arrays fill(Object[], int, int, Object) method. First, we've created an array of Objects and its elements are printed. Using fill(Object[], int, int, Object) method method, we're filling the subarray of array with a give value and then updated array elements are printed again.

package com.tutorialspoint;

import java.util.Arrays;

public class ArrayDemo {
   public static void main(String[] args) {

      // initializing Student array
      Student arr[] = { new Student(1, "Julie"), new Student(3, "Adam"), new Student(2, "Robert") };

      // let us print the values
      System.out.println("Actual values: ");
      for (Student value : arr) {
         System.out.println("Value = " + value);
      }

      Student replacement = new Student(0, "");
      
      // using fill for placing value from index 0 to 2
      Arrays.fill(arr, 0, 2, replacement);

      // let us print the values
      System.out.println("New values after using fill() method: ");
      for (Student value : arr) {
         System.out.println("Value = " + value);
      }
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Actual values: 
Value = [ 1, Julie ]
Value = [ 3, Adam ]
Value = [ 2, Robert ]
New values after using fill() method: 
Value = [ 0,  ]
Value = [ 0,  ]
Value = [ 2, Robert ]
java_util_arrays.htm
Advertisements