Java 菜鸟教程

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Java 异常处理

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java ArrayList set() 使用方法及示例

Java ArrayList 方法

Java ArrayList set()方法将指定位置中的元素替换为arraylist中的指定元素。

set()方法的语法为:

arraylist.set(int index, E element)

set()参数

set()方法有两个参数。

  • index - 被替换元素的位置

  • element - 要存储在index的新元素

set()返回值

  • 返回先前在index处出现的元素

注意:如果指定的索引超出范围,则set()方法将抛出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");

    //创建另一个与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);

  }
}

输出结果

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()以了解有关的更多信息。

Java ArrayList 方法