Добавление элементов в массив и ArrayList

JavaJavaBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Массив - это коллекция элементов одного и того же типа данных в Java с фиксированным размером, в то время как ArrayList - это динамическая коллекция элементов одного и того же типа данных. В этом практическом занятии показано, как добавлять элементы в массив и ArrayList.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java(("Java")) -.-> java/DataStructuresGroup(["Data Structures"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java/DataStructuresGroup -.-> java/arrays("Arrays") java/DataStructuresGroup -.-> java/arrays_methods("Arrays Methods") java/DataStructuresGroup -.-> java/collections_methods("Collections Methods") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/classes_objects("Classes/Objects") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/exceptions("Exceptions") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/arraylist("ArrayList") java/SystemandDataProcessingGroup -.-> java/string_methods("String Methods") subgraph Lab Skills java/arrays -.-> lab-117386{{"Добавление элементов в массив и ArrayList"}} java/arrays_methods -.-> lab-117386{{"Добавление элементов в массив и ArrayList"}} java/collections_methods -.-> lab-117386{{"Добавление элементов в массив и ArrayList"}} java/classes_objects -.-> lab-117386{{"Добавление элементов в массив и ArrayList"}} java/exceptions -.-> lab-117386{{"Добавление элементов в массив и ArrayList"}} java/arraylist -.-> lab-117386{{"Добавление элементов в массив и ArrayList"}} java/string_methods -.-> lab-117386{{"Добавление элементов в массив и ArrayList"}} end

Добавление элементов в массив:

Для добавления элементов в массив необходимо выполнить следующие шаги:

  • Создать массив большей размерности
  • Скопировать элементы из старого массива в новый с использованием цикла
  • Добавить новый элемент в конец нового массива

Вот код для добавления элементов в массив:

~/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));
   }
}

Для запуска кода откройте терминал в папке проекта, а затем скомпилируйте и запустите код с помощью следующих команд:

javac ArrayAppend.java
java ArrayAppend

После запуска кода вы получите следующий вывод:

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

Добавление элементов в ArrayList:

Для добавления элементов в ArrayList необходимо выполнить следующие шаги:

  • Создать ArrayList
  • Использовать метод add() для добавления элементов в ArrayList

Вот код для добавления элементов в 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);
   }
}

Для запуска кода откройте терминал в папке проекта, а затем скомпилируйте и запустите код с помощью следующих команд:

javac ArrayListAppend.java
java ArrayListAppend

После запуска кода вы получите следующий вывод:

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

Вставка элементов в массив:

Для вставки элементов в массив необходимо выполнить следующие шаги:

  • Создать массив большей размерности
  • Сдвинуть элементы старого массива вправо в новом массиве до тех пор, пока не будет вставлен новый элемент
  • Если индекс выходит за пределы диапазона, выбросить исключение IndexOutOfBoundsException

Вот код для вставки элементов в массив:

~/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));
   }
}

Для запуска кода откройте терминал в папке проекта, а затем скомпилируйте и запустите код с помощью следующих команд:

javac ArrayInsert.java
java ArrayInsert

После запуска кода вы получите следующий вывод:

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

Вставка элементов в ArrayList:

Для вставки элементов в ArrayList необходимо выполнить следующие шаги:

  • Создать ArrayList
  • Использовать метод add() для добавления элементов в ArrayList
  • Использовать перегруженную версию метода add() для вставки элементов в ArrayList

Вот код для вставки элементов в 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);
   }
}

Для запуска кода откройте терминал в папке проекта, а затем скомпилируйте и запустите код с помощью следующих команд:

javac ArrayListInsert.java
java ArrayListInsert

После запуска кода вы получите следующий вывод:

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

Резюме

В этом практическом занятии показано, как добавлять элементы в массив и ArrayList в Java. Мы научились добавлять и вставлять элементы в массив и ArrayList. Добавление элементов является простой операцией, в то время как вставка может быть несколько сложнее в случае с массивами, в то время как у ArrayList есть простой метод вставки. Всегда убедитесь, что вы остаетесь внутри границ массива или ArrayList, иначе возникнет исключение IndexOutOfBoundsException.