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è)元素的索引號,則可以使用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)的更多信息。