See More

package lambda.ex3; import lambda.ex2.StringFunction; import java.util.LinkedList; import java.util.List; import java.util.function.Function; import java.util.function.UnaryOperator; public class MapExample { // 고차 함수, 함수를 인자로 받아, 리스트의 각 요소를 반환 public static List map(List list, UnaryOperator func){ List str = new LinkedList<>(); for (String s : list) { str.add(func.apply(s)); } return str; } public static void main(String[] args){ List words = List.of("hello", "java", "lambda"); System.out.println("원본 리스트 : " + words); UnaryOperator func1 = (s) -> s.toUpperCase(); UnaryOperator func2 = (s) -> "***"+s+"***"; List map = map(words, func1); System.out.println(map.toString()); map = map(words, func2); System.out.println(map.toString()); } }