Java ArrayList set() 方法
set()
方法的语法是:
arraylist.set(int index, E element)
这里,arraylist
是 ArrayList
类的一个对象。
set() 参数
set()
方法接受两个参数。
- index - 要被替换元素的位置
- element - 要存储在
index
位置的新元素
set() 返回值
- 返回在
index
位置之前存在的元素 - 如果
index
超出范围,则抛出IndexOutOfBoundsException
示例 1:在 ArrayList 中替换元素
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
// 创建一个 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);
}
}
输出
ArrayList: [Python, English, JavaScript]
更新后的 ArrayList: [Python, Java, JavaScript]
被替换的元素: English
在上述示例中,我们创建了一个名为 languages
的 arraylist。这里,我们使用了 set()
方法将索引 1 (English
)处的元素替换为 Java
。
注意:如果您不确定元素的索引号,可以使用 ArrayList indexOf() 方法。
ArrayList set() 与 add() 的比较
add()
和 set()
方法的语法看起来相似。
// add() 的语法
arraylist.add(int index, E element)
// set() 的语法
arraylist.set(int index, E element)
并且,这两种方法都会向 arraylist 添加新元素。这就是为什么有些人认为这两种方法相似。
然而,它们之间存在一个主要区别。
set()
方法通过替换该位置上的旧元素,在指定位置添加新元素。add()
方法通过将旧元素向右移动,将新元素添加到指定位置。
示例 2:ArrayList set() 与 add() 的比较
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<String> languages1 = new ArrayList<>();
// 向 ArrayList 添加元素
languages1.add("Python");
languages1.add("English");
languages1.add("JavaScript");
// 创建另一个与 languages1 相似的 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);
}
}
输出
ArrayList: [Python, English, JavaScript]
set() 后的 ArrayList: [Python, Java, JavaScript]
add() 后的 ArrayList: [Python, Java, English, JavaScript]
在上述示例中,我们创建了两个名为 languages1
和 languages2
的 arraylist。我们使用了 ArrayList addAll() 方法,使这两个 arraylist 拥有相同的元素。
这里,
set()
方法替换了位置 1 上的English
元素add()
方法将English
元素移至位置 2
要了解更多关于添加值的信息,请访问 Java ArrayList add()。