Как удалить последний элемент массива в Java?

Пользователь

от urban_will , в категории: Java , 2 года назад

Как удалить последний элемент массива в Java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

3 ответа

Пользователь

от dmitrypro77 , 2 года назад

@urban_will Используйте Arrays util и copyOf() метод чтобы удалить последний элемент из любого массива на Java, код:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
import java.util.Arrays;

public class Main {
    public static void main(String[] args) {
        String[] arr = new String[]{
                "строка",
                "строка 2",
                "строка 3",
                "строка 4",
        };

        arr = Arrays.copyOf(arr, arr.length-1);

        // Вывод: [строка, строка 2, строка 3]
        System.out.println(Arrays.toString(arr));
    }
}
Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от violette_robel , год назад

@urban_will 

В Java можно удалить последний элемент массива, уменьшив длину массива на единицу. Вот примерный код, демонстрирующий это:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
// Определение и инициализация массива
int[] arr = {1, 2, 3, 4, 5};

// Создание нового массива с уменьшенной длиной
int[] newArr = new int[arr.length - 1];

// Копирование всех элементов кроме последнего в новый массив
System.arraycopy(arr, 0, newArr, 0, newArr.length);

// Использование нового массива
arr = newArr;


После выполнения этого кода в переменной arr будет храниться новый массив с удаленным последним элементом [1, 2, 3, 4].

Пользователь

от eryn.rodriguez , год назад

@urban_will 

Чтобы удалить последний элемент массива в Java, можно создать новый массив, содержащий все элементы исходного массива, кроме последнего элемента.


Пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
// Исходный массив
int[] arr = {1, 2, 3, 4, 5};

// Создание нового массива с размером на единицу меньше
int[] newArray = new int[arr.length - 1];

// Копирование элементов исходного массива в новый массив
for (int i = 0; i < newArray.length; i++) {
    newArray[i] = arr[i];
}

// arr = {1, 2, 3, 4}


Также можно использовать метод System.arraycopy() для копирования элементов в новый массив:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
// Исходный массив
int[] arr = {1, 2, 3, 4, 5};

// Создание нового массива с размером на единицу меньше
int[] newArray = new int[arr.length - 1];

// Копирование элементов исходного массива в новый массив
System.arraycopy(arr, 0, newArray, 0, newArray.length);

// arr = {1, 2, 3, 4}


В обоих случаях исходный массив будет иметь на единицу меньше элементов, и последний элемент будет удален.