Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Phương thức List.replaceAll(UnaryOperator) trong Java


Chức năng

List.replaceAll(UnaryOperator operator) áp dụng operation lên từng element, thay thế giá trị cũ bằng kết quả.

Ví dụ: Chuyển danh sách sang UPPERCASE

import java.util.ArrayList;
import java.util.function.UnaryOperator;

class Op implements UnaryOperator {
    public String apply(String str) {
        return str.toUpperCase();
    }
}

public class Test {
    public static void main(String[] args) throws CloneNotSupportedException {
        ArrayList list = new ArrayList<>();
        list.add("Java");
        list.add("JavaScript");
        list.add("CoffeeScript");
        list.add("HBase");
        list.add("OpenNLP");
        System.out.println("Danh sách gốc: " + list);
        list.replaceAll(new Op());
        System.out.println("Sau replaceAll: " + list);
    }
}

Kết quả

Danh sách gốc: [Java, JavaScript, CoffeeScript, HBase, OpenNLP]
Sau replaceAll: [JAVA, JAVASCRIPT, COFFEESCRIPT, HBASE, OPENNLP]

Dùng Lambda (Java 8+)

list.replaceAll(s -> s.toUpperCase());
// Hoặc method reference
list.replaceAll(String::toUpperCase);

Lưu ý

  • Thay đổi in-place (mutate list gốc), không trả về list mới.
  • UnaryOperator extends Function - input/output cùng type.
  • Khác với Stream.map() tạo stream mới, replaceAll sửa trực tiếp list.