<aside> ⚠️ [질문]

1. 자바의 람다식은 왜 등장했을까?

람다식?

등장 이유

  1. 람다식을 사용하면 불필요한 코드가 줄어들어 라인 수가 감소하고 가독성이 높아진다.
  2. 람다식으로 바로 실행문 전달이 가능하다. 함수를 만드는 과정이 필요 없다.
  3. 병렬 프로그래밍(하나의 작업을 여러 개의 작은 작업으로 나누어 동시에 실행하는 프로그래밍 방식)이 가능하다. → 멀티 스레딩이 가능하다.
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
List<Integer> squaredNumbers = new ArrayList<>();

for (int number : numbers) {
    int squared = number * number;
    squaredNumbers.add(squared);
}
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
List<Integer> squaredNumbers = numbers.parallelStream()
                                     .map(number -> number * number)
                                     .collect(Collectors.toList());

→ parallelStream() 메소드는 병렬 스트림을 생성한다. 병렬 스트림은 내부적으로 멀티 스레딩을 사용하여 작업을 병렬적으로 처리해서 처리 속도를 높인다.

2. 람다식과 익명 클래스는 어떤 관계가 있을까? - 람다식의 문법은 어떻게 될까?

익명 클래스?