Примеры Java - Удаление элементов массива
Массивы в Java имеют фиксированную длину, и их нельзя напрямую удалить. Мы можем создать новый массив и поместить элементы, которые хотим сохранить из исходного массива, в новый массив:
Файл Main.java
import java.util.Arrays;
public class ExampleTest {
public static void main(String[] args) {
int[] oldarray = new int[] {3, 4, 5, 6, 7};//Исходный массив
int num = 2; //Удалить элемент с индексом 2, то есть удалить третий элемент, 5
int[] newArray = new int[oldarray.length-1];//Новый массив с длиной, равной длине исходного массива минус 1
for(int i=0;i<newArray.length; i++) {
//Проверить, выходит ли элемент за границы
if (num < 0 || num >= oldarray.length) {
throw new RuntimeException("Элемент выходит за границы...");
}
//
if(i<num) {
newArray[i] = oldarray[i];
}
else {
newArray[i] = oldarray[i+1];
}
}
//Вывести содержимое массива
System.out.println(Arrays.toString(oldarray));
oldarray = newArray;
System.out.println(Arrays.toString(oldarray));
}
}
Приведённый выше код выдаёт следующий вывод:
[3, 4, 5, 6, 7] [3, 4, 6, 7]
Мы также можем использовать ArrayList для реализации этой функциональности. ArrayList — это динамический массив, что делает операции более удобными.
В следующем примере показано, как использовать метод remove() класса ArrayList для удаления элементов из ArrayList:
Файл Main.java
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<String> objArray = new ArrayList<String>();
objArray.clear();
objArray.add(0,"0-й элемент");
objArray.add(1,"1-й элемент");
objArray.add(2,"2-й элемент");
System.out.println("Перед удалением элемента из массива:"+objArray);
objArray.remove(1);
objArray.remove("0-й элемент");
System.out.println("После удаления элемента из массива:"+objArray);
}
}
Приведённый выше код выдаёт следующий вывод:
数组删除元素前:[第 0 个元素, 第 1 个元素, 第 2 个元素] 数组删除元素后:[第 2 个元素]Другие расширения
Примеры Java