Rellenar un array en Java

Mohd Ebad Naqvi 12 octubre 2023
  1. Utilice { } para completar un array en Java
  2. Utilice el bucle for para completar un array en Java
  3. Utilice el método Arrays.copyOf() para rellenar el elemento en un array de Java
  4. Utilice el método Arrays.fill() para rellenar elementos en un array de Java
Rellenar un array en Java

Según la definición del usuario, el array será primitiva o las referencias de objeto (o no primitivas) de una clase.

En un array de tipos de datos primitivos, los elementos se almacenan en una ubicación de memoria contigua. Por el contrario, en un tipo de datos no primitivo, los elementos se almacenan en la memoria dinámica (segmento Heap).

En este tutorial, llenamos un array en Java. Rellenar aquí significa llenar el array con algunos valores.

Utilice { } para completar un array en Java

Es el método básico y uno de los más simples para poblar un array. Las llaves {} se utilizan para definir los elementos de un array.

Por ejemplo,

import java.util.*;
public class Num {
  public static void main(String args[]) {
    int arr[] = {1, 3, 5, 7, 11}; // Declaration of elements using { }

    for (int j = 0; j < arr.length; j++) {
      System.out.print(array[j] + " ");
    }
  }
}

Producción :

1 3 5 7 11

Utilice el bucle for para completar un array en Java

La clase Scanner se utiliza para escanear los elementos del array del usuario. Ejecutamos un bucle hasta que la longitud del usuario y el uso del objeto de los elementos de la clase Scanner se ingresan en cada iteración.

Consulte el siguiente código.

import java.util.Scanner;
public class ArrayInputUsingLoop {
  public static void main(String[] args) {
    int number;
    Scanner obj = new Scanner(System.in);
    System.out.print("Total number of elements: ");
    number = obj.nextInt();
    int[] array = new int[20];
    System.out.println("Enter the elements of the array: ");
    for (int i = 0; i < number; i++) {
      array[i] = obj.nextInt(); // reads elements from the user
    }
    System.out.println("Array elements you entered are: ");
    for (int i = 0; i < number; i++) {
      System.out.println(array[i]);
    }
  }
}

Producción :

Total number of elements: 5
Enter the elements of the array: 
5
4
3
2
1
Array elements you entered are: 
5
4
3
2
1

Utilice el método Arrays.copyOf() para rellenar el elemento en un array de Java

El método Array.copyOf() pertenece a la clase java.util.Arrays. Esta función copia el array en particular y la trunca con ceros o valores nulos si es necesario para mantener la longitud dada del array de copia.

Habrá valores idénticos para todos los índices válidos en el array original y copiada.

Por ejemplo,

import java.util.Arrays;

public class Main {
  public static void main(String[] args) {
    int[] array1 = new int[] {8, 9, 10, 11, 12};

    System.out.println("First array is:");
    for (int i = 0; i < array1.length; i++) {
      System.out.println(array1[i]);
    }

    int[] array2 = Arrays.copyOf(array1, 7);
    array2[5] = 6;
    array2[6] = 7;

    System.out.println("New array after copying elements is:");
    for (int i = 0; i < array2.length; i++) {
      System.out.println(array2[i]);
    }
  }
}

Producción :

First array is:
8
9
10
11
12
New array after copying elements is:
8
9
10
11
12
6
7

Si la longitud excedel array original, los elementos adicionales se compensan con el valor 0.

Por ejemplo,

import java.util.Arrays;

public class ArrayCopy {
  public static void main(String args[]) {
    int[] originalarray = new int[] {7, 8, 9};
    System.out.println("The Original Array is : \n");
    for (int i = 0; i < originalarray.length; i++) System.out.print(originalarray[i] + " ");

    int[] copyarray = Arrays.copyOf(originalarray, 5);

    System.out.print("\nNew Array copy of greater length is:\n");
    for (int i = 0; i < copyarray.length; i++) System.out.print(copyarray[i] + " ");
  }
}

Producción :

The Original Array is : 
7 8 9 
New Array copy of greater length is:
7 8 9 0 0 

Utilice el método Arrays.fill() para rellenar elementos en un array de Java

El método Arrays.fill() pertenece a la clase java.util.Arrays.

Usando este método, podemos reemplazar todos los elementos en un array dada con el elemento recién ingresado. Todas las posiciones del array serán reemplazadas o rellenadas por el elemento de valor especificado.

Por ejemplo,

import java.util.Arrays;

public class ArrayFill {
  public static void main(String[] args) {
    int array[] = {6, 7, 8, 9, 10};

    Arrays.fill(array, 5);
    System.out.println(Arrays.toString(array));
  }
}

Producción :

[5, 5, 5, 5, 5]

el array original puede llenarse parcialmente con los nuevos elementos especificando el índice.

Por ejemplo,

import java.util.Arrays;

public class ArrayFill2 {
  public static void main(String[] args) {
    int array[] = {7, 8, 9, 10, 11};

    Arrays.fill(array, 2, 5, 0); // Replace elements from index 2 to index 4 by 0

    System.out.println(Arrays.toString(array));
  }
}

Producción :

[7, 8, 0, 0, 0]

Artículo relacionado - Java Array