Adicionar Elementos a Array e ArrayList

JavaBeginner
Pratique Agora

Introdução

Um array (vetor) é uma coleção de tipos de dados semelhantes em Java com um tamanho fixo, enquanto um ArrayList é uma coleção dinâmica de tipos de dados semelhantes. Este laboratório mostrará como adicionar elementos a um array e a um ArrayList.

Anexar elementos a um array

Para adicionar elementos a um array, você precisa seguir os passos fornecidos:

  • Criar um array de tamanho maior
  • Copiar os elementos do array antigo para o novo array usando um loop
  • Adicionar o novo elemento ao final do novo array

Aqui está o código para adicionar elementos a um array:

~/project/ArrayAppend.java

import java.util.Arrays;

public class ArrayAppend {
   public static int[] appendToArray(int[] oldArr, int elementToAdd) {
      int[] newArr = Arrays.copyOf(oldArr, oldArr.length + 1);
      newArr[newArr.length - 1] = elementToAdd;
      return newArr;
   }

   public static void main(String[] args) {
      int[] arr = {1, 2, 3, 4, 5};
      System.out.println("Initial Array: " + Arrays.toString(arr));
      arr = appendToArray(arr, 6);
      arr = appendToArray(arr, 7);
      arr = appendToArray(arr, 8);
      System.out.println("After adding elements: " + Arrays.toString(arr));
   }
}

Para executar o código, abra o terminal na pasta do projeto e, em seguida, compile e execute o código com os seguintes comandos:

javac ArrayAppend.java
java ArrayAppend

Após executar o código, você obterá a seguinte saída:

Initial Array: [1, 2, 3, 4, 5]
After adding elements: [1, 2, 3, 4, 5, 6, 7, 8]

Anexar elementos a um ArrayList

Para adicionar elementos a um ArrayList, você precisa seguir os passos fornecidos:

  • Criar um ArrayList
  • Usar o método add() para adicionar elementos ao ArrayList

Aqui está o código para adicionar elementos a um ArrayList:

~/project/ArrayListAppend.java

import java.util.ArrayList;

public class ArrayListAppend {
   public static void main(String[] args) {
      ArrayList<Integer> arrList = new ArrayList<Integer>();
      arrList.add(1);
      arrList.add(2);
      arrList.add(3);
      System.out.println("Initial ArrayList: " + arrList);
      arrList.add(4);
      arrList.add(5);
      System.out.print("After adding elements: " + arrList);
   }
}

Para executar o código, abra o terminal na pasta do projeto e, em seguida, compile e execute o código com os seguintes comandos:

javac ArrayListAppend.java
java ArrayListAppend

Após executar o código, você obterá a seguinte saída:

Initial ArrayList: [1, 2, 3]
After adding elements: [1, 2, 3, 4, 5]

Inserir elementos em um array

Para inserir elementos em um array, você precisa seguir os passos fornecidos:

  • Criar um array de tamanho maior
  • Deslocar os elementos do array antigo para a direita no novo array até que o novo elemento seja inserido
  • Se o índice estiver fora do intervalo, lançar uma IndexOutOfBoundsException

Aqui está o código para inserir elementos em um array:

~/project/ArrayInsert.java

import java.util.Arrays;

public class ArrayInsert {
   public static int[] insertAtIndex(int[] arr, int elementToAdd, int index) {
      if (index > arr.length || index < 0) {
         throw new IndexOutOfBoundsException("Index is out of range!");
      } else {
         int[] newArr = new int[arr.length + 1];
         for (int i = 0, j = 0; i < arr.length; i++, j++) {
            if (i == index) {
               newArr[j++] = elementToAdd;
            }
            newArr[j] = arr[i];
         }
         return newArr;
      }
   }

   public static void main(String[] args) {
      int[] arr = {1, 2, 3, 4, 5};
      System.out.println("Initial Array: " + Arrays.toString(arr));
      arr = insertAtIndex(arr, 6, 2);
      System.out.println("After inserting at index 2: " + Arrays.toString(arr));
   }
}

Para executar o código, abra o terminal na pasta do projeto e, em seguida, compile e execute o código com os seguintes comandos:

javac ArrayInsert.java
java ArrayInsert

Após executar o código, você obterá a seguinte saída:

Initial Array: [1, 2, 3, 4, 5]
After inserting at index 2: [1, 2, 6, 3, 4, 5]

Inserir elementos em um ArrayList

Para inserir elementos em um ArrayList, você precisa seguir os passos fornecidos:

  • Criar um ArrayList
  • Usar o método add() para adicionar elementos ao ArrayList
  • Usar a versão sobrecarregada do método add() para inserir elementos no ArrayList

Aqui está o código para inserir elementos em um ArrayList:

~/project/ArrayListInsert.java

import java.util.ArrayList;

public class ArrayListInsert {
   public static void main(String[] args) {
      ArrayList<Integer> arrList = new ArrayList<Integer>();
      arrList.add(1);
      arrList.add(2);
      arrList.add(3);
      System.out.println("Initial ArrayList: " + arrList);
      arrList.add(1, 5);
      arrList.add(3, 6);
      System.out.print("After inserting elements: " + arrList);
   }
}

Para executar o código, abra o terminal na pasta do projeto e, em seguida, compile e execute o código com os seguintes comandos:

javac ArrayListInsert.java
java ArrayListInsert

Após executar o código, você obterá a seguinte saída:

Initial ArrayList: [1, 2, 3]
After inserting elements: [1, 5, 2, 6, 3]

Resumo

Este laboratório demonstrou como adicionar elementos a um array e a um ArrayList em Java. Aprendemos como anexar (append) e inserir elementos em um array e em um ArrayList. Enquanto anexar é fácil, inserir pode ser um pouco complexo no caso de arrays, mas o ArrayList possui um método de inserção direto. Certifique-se sempre de permanecer dentro dos limites do array ou ArrayList, caso contrário, ocorrerá uma IndexOutOfBoundsException.