跳到主要内容

Java ArrayList replaceAll() 方法

replaceAll() 方法的语法是:

arraylist.replaceAll(UnaryOperator<E> operator)

这里,arraylistArrayList 类的一个对象。

replaceAll() 参数

replaceAll() 方法接受单个参数。

  • operator - 应用于每个元素的操作

replaceAll() 返回值

replaceAll() 方法不返回任何值。相反,它将 arraylist 中所有的值替换为 operator 提供的新值。

示例 1:将所有元素转换为大写

import java.util.ArrayList;

class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<String> languages = new ArrayList<>();

// 向 ArrayList 添加元素
languages.add("java");
languages.add("javascript");
languages.add("swift");
languages.add("python");
System.out.println("ArrayList: " + languages);

// 将所有元素替换为大写
languages.replaceAll(e -> e.toUpperCase());
System.out.println("更新后的 ArrayList: " + languages);
}
}

输出

ArrayList: [java, javascript, swift, python]
更新后的 ArrayList: [JAVA, JAVASCRIPT, SWIFT, PYTHON]

在上面的示例中,我们创建了一个名为 languages 的 arraylist。注意这一行,

languages.replaceAll(e -> e.toUpperCase());

这里,

  • e -> e.toUpperCase() 是一个 lambda 表达式。它将 arraylist 中的所有元素转换为大写。要了解更多,请访问 Java Lambda 表达式
  • replaceAll() - 将 arraylist 中的所有元素替换为大写。

示例 2:将 ArrayList 中的所有元素乘以 2

import java.util.ArrayList;

class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<Integer> numbers = new ArrayList<>();

// 向 ArrayList 添加元素
numbers.add(1);
numbers.add(2);
numbers.add(3);
System.out.println("ArrayList: " + numbers);

// 将 hashmap 中的所有元素乘以 2
numbers.replaceAll(e -> e * 2);;
System.out.println("更新后的 ArrayList: " + numbers);
}
}

输出

ArrayList: [1, 2, 3]
更新后的 ArrayList: [2, 4, 6]

在上面的示例中,我们创建了一个名为 numbers 的 arraylist。注意这一行,

numbers.replaceAll(e -> e * 2);

这里,

  • e -> e * 2 - 将 arraylist 中的每个元素乘以 2
  • replaceAll() - 将 arraylist 中的所有元素替换为 e -> e * 2 的结果

注意:我们也可以使用 Collections.replace() 方法在 Java 中执行完全相同的操作。