상세 컨텐츠

본문 제목

[Function] 사용방식

자바

by esoesmio 2023. 4. 5. 14:19

본문

import java.util.function.Function;

public class z4 {
    public static void main(String[] args) {

//
//  Function<String, String> func = s -> {
//
//      String result = s.concat("aa");
//      result = s.toLowerCase();
//      return result;
//
//
//
//  };

      Function<String, String> func = String::toString;
      func = func.andThen(s->s.concat("AA"));

      String result = func.apply("bbb");

        System.out.println(result);


        }




    }






 

 

이 코드는 Java 8부터 도입된 함수형 프로그래밍을 활용하는 예제입니다.

Function 인터페이스는 입력값을 받아서 출력값을 반환하는 함수를 나타냅니다. 함수형 인터페이스이기 때문에 람다 표현식 또는 메서드 참조를 사용하여 구현할 수 있습니다.

javascriptCopy code
Function<String, String> func = String::toString;

위 코드에서는 String 클래스의 toString 메서드를 참조하여 Function 객체 func를 생성합니다. 이 함수는 입력값으로 String 객체를 받아서 toString 메서드를 호출하여 String 객체를 반환합니다. 즉, 이 함수는 입력값과 같은 문자열을 반환합니다.

swiftCopy code
func = func.andThen(s -> s.concat("AA"));

andThen 메서드는 Function 객체의 결과값을 인자로 받아서 새로운 Function 객체를 반환합니다. 위 코드에서는 func 함수를 먼저 적용한 결과값에 "AA" 문자열을 추가하는 새로운 함수를 생성합니다.

arduinoCopy code
String result = func.apply("bbb");

apply 메서드는 Function 객체를 실행하여 결과값을 반환합니다. 위 코드에서는 입력값으로 "bbb" 문자열을 주어서 func 함수를 실행한 결과를 result 변수에 저장합니다. func 함수는 먼저 "bbb" 문자열을 toString 메서드로 변환하고, 그 결과에 "AA" 문자열을 추가하여 반환합니다. 따라서 result 변수에는 "bbbaa" 문자열이 저장됩니다.

결과적으로 이 코드는 입력값으로 주어진 문자열에 "AA"를 추가한 문자열을 반환하는 함수를 구현하고, 이 함수를 실행하여 "bbbaa" 문자열을 출력하는 예제입니다.

 

 

관련글 더보기

댓글 영역