Метод set() класса ArrayList в Java
Метод set() используется для замены элемента по указанному индексу в динамическом массиве.
Синтаксис метода set():
arraylist.set(int index, E element)
Примечание:arraylist — это объект класса ArrayList.
Детали параметров:
- index — позиция индекса
- element — новый элемент для замены в позиции индекса
Возвращаемое значение
Возвращает элемент, который ранее находился в позиции индекса.
Если значение индекса выходит за пределы допустимого диапазона, выбрасывается исключение IndexOutOfBoundsException.
Пример
Заменить элемент в динамическом массиве:
Пример
class Main {
public static void main(String[] args){
// Создать динамический массив
ArrayList<String> sites = new ArrayList<>();
sites.add("Google");
sites.add("Example");
sites.add("Taobao");
System.out.println("Список сайтов: " + sites);
// Элемент по индексу 2 заменён
String element = sites.set(2, "Wiki");
System.out.println("После замены: " + sites);
System.out.println("Заменённый элемент: " + element);
}
}
Выполнение вышеуказанной программы дает следующий вывод:
替换后: [Google, Example, Wiki] 被替换的元素: Taobao
В приведённом выше примере мы создали массив с именем sites, и метод set() заменил Taobao в позиции индекса 2 на Wiki.
Примечание. Если вы не уверены в значении индекса элемента, можно использовать метод ArrayList indexOf().
Метод ArrayList set() против add()
Синтаксис методов add() и set() выглядит очень похоже.
// add() 的语法 arraylist.add(int index, E element) // set() 的语法 arraylist.set(int index, E element)
Оба метода добавляют новый элемент в массив.
Однако между ними есть большая разница:
- Метод set() обновляет элемент в указанной позиции.
- Метод add() вставляет элемент в динамический массив по указанной позиции.
Пример
class Main {
public static void main(String[] args){
// Создать динамический массив
ArrayList<String> sites = new ArrayList<>();
sites.add("Google");
sites.add("Example");
sites.add("Taobao");
System.out.println("Список сайтов: " + sites);
// Создаем ещё один динамический массив sites2
ArrayList<String> sites2 = new ArrayList<>();
// Добавляем элементы sites в sites2
sites2.addAll(sites);
System.out.println(ArrayList: " + sites);
// Использование set()
sites.set(1, "Wiki");
System.out.println("ArrayList после использования set(): " + sites);
// Использование add()
sites2.add(1, "Wiki");
System.out.println("ArrayList после использования add(): " + sites2);
}
}
Выполнение вышеуказанной программы дает следующий вывод:
网站列表: [Google, Example, Taobao] ArrayList: [Google, Example, Taobao] ArrayList 使用 set() 后: [Google, Wiki, Taobao] ArrayList 使用 add() 后: [Google, Wiki, Example, Taobao]
В приведённом выше примере мы создали два динамических массива с именами sites и sites2. Мы использовали метод ArrayList addAll(), чтобы оба динамических массива имели одинаковые элементы.
Метод set() заменяет элемент в позиции с индексом 1.
Метод add() добавляет элемент Wiki в позицию с индексом 1, изменяя индекс элемента Example на 2.
Чтобы узнать больше о добавлении значений, посетитеJava ArrayList add()。
Другие расширения
Java ArrayList