Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

자바에서 사용자 정의 UnaryOperator 구현.


java.util.function.UnaryOperator 인터페이스는 람다 식의 할당 대상으로 사용할 수 있으며, 결과가 입력과 동일한 유형이 되는 단일 피연산자에 대한 작업을 나타냅니다. 이 인터페이스를 구현하여 고유한 UnaryOperator를 만들 수 있습니다.

List 인터페이스의 replaceAll() 메서드는 특정 작업을 나타내는 UnaryOperator의 개체를 수락하고 현재 목록의 모든 요소에 대해 지정된 작업을 수행하고 기존 값을 결과 값으로 바꿉니다.

다음 예제에서 우리는 UnaryOperator 인터페이스를 구현하고 사용자 정의 단항 연산자 개체를 만들고 이것을 replaceAll() 메서드에 인수로 전달하려고 합니다.

import java.util.ArrayList;
import java.util.function.UnaryOperator;
class Op implements UnaryOperator<String> {
   public String apply(String str) {
      return str.toUpperCase();
   }
}
public class Test {
   public static void main(String[] args) throws CloneNotSupportedException {
      ArrayList<String> list = new ArrayList<>();
      list.add("Java");
      list.add("JavaScript");
      list.add("CoffeeScript");
      list.add("HBase");
      list.add("OpenNLP");
      System.out.println("Contents of the list: "+list);
      list.replaceAll(new Op());
      System.out.println("Contents of the list after replace operation: \n"+list);
   }
}

출력

Contents of the list: [Java, JavaScript, CoffeeScript, HBase, OpenNLP]
Contents of the list after replace operation:
[JAVA, JAVASCRIPT, COFFEESCRIPT, HBASE, OPENNLP]