Java ArrayList set()方法將指定位置中的元素替換為arraylist中的指定元素。
set()方法的語法為:
arraylist.set(int index, E element)
set()方法有兩個(gè)參數(shù)。
index - 被替換元素的位置
element - 要存儲(chǔ)在index的新元素
返回先前在index處出現(xiàn)的元素
注意:如果指定的索引超出范圍,則set()方法將拋出IndexOutOfBoundsException。
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
//創(chuàng)建 ArrayList
ArrayList<String> languages = new ArrayList<>();
//向ArrayList添加元素
languages.add("Python");
languages.add("English");
languages.add("JavaScript");
System.out.println("ArrayList: " + languages);
//替換索引1處的元素
String element = languages.set(1, "Java");
System.out.println("更新后的 ArrayList: " + languages);
System.out.println("被替換的元素: " + element);
}
}輸出結(jié)果
ArrayList: [Python, English, JavaScript] 更新后的 ArrayList: [Python, Java, JavaScript] 被替換的元素: English
在上面的示例中,我們創(chuàng)建了一個(gè)名為languages的ArrayList。在這里,我們使用的set()方法將索引1(English)的元素替換為Java。
注意:如果不確定某個(gè)元素的索引號(hào),則可以使用ArrayList indexOf()方法。
add()和set()方法的語法看起來非常相似。
// add() 語法 arraylist.add(int index, E element) // set() 語法 arraylist.set(int index, E element)
并且,這兩種方法都將新元素添加到arraylist中。這就是為什么有些人認(rèn)為這兩種方法相似。
但是,它們之間存在主要區(qū)別。
set() 方法的作用是:通過替換指定位置的舊元素,在指定位置添加新元素。
add() 方法的作用是:通過將舊元素移到正確的位置,在指定位置添加新元素。
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
//創(chuàng)建 ArrayList
ArrayList<String> languages1 = new ArrayList<>();
//向ArrayList添加元素
languages1.add("Python");
languages1.add("English");
languages1.add("JavaScript");
//創(chuàng)建另一個(gè)與language1類似的ArrayList
ArrayList<String> languages2 = new ArrayList<>();
//將languages1中的所有元素添加到languages2中
languages2.addAll(languages1);
System.out.println("ArrayList: " + languages1);
//使用 set() 方法
languages1.set(1, "Java");
System.out.println("set()之后的ArrayList: " + languages1);
//使用 add() 方法
languages2.add(1, "Java");
System.out.println("add()之后的ArrayList: " + languages2);
}
}輸出結(jié)果
ArrayList: [Python, English, JavaScript] set()之后的ArrayList: [Python, Java, JavaScript] add()之后的ArrayList: [Python, Java, English, JavaScript]
在上面的示例中,我們創(chuàng)建了兩個(gè)名為languages1和languages2的ArrayList。我們使用了ArrayList addAll()方法,以便兩個(gè)arraylist具有相同的元素。
這里,
set()方法替換位置1處的English元素
add()方法將元素English移至位置2
可以訪問Java ArrayList add()以了解有關(guān)的更多信息。