Notice
Recent Posts
Recent Comments
Link
고양이 여름이의 지식채널
JAVA 람다 표현식 설명과 예제 (Lambda Expression) 본문
자바 8에서는 람다 표현식이 도입되었습니다. 람다 표현식은 익명 함수를 생성하는 간단한 방법입니다. 이를 통해 코드의 가독성과 유지 보수성이 향상됩니다.
람다 표현식의 기본적인 형태는 다음과 같습니다.
(parameter) -> { body }
parameter는 매개변수 목록을 의미하며, body는 람다 표현식이 실행될 코드 블록을 의미합니다. body는 중괄호{ } 로 감싸져 있으며, 코드가 한 줄인 경우 중괄호를 생략할 수 있습니다.
람다 표현식을 이용하면 함수형 인터페이스를 간단하게 구현할 수 있습니다. 예를 들어, 다음과 같은 함수형 인터페이스가 있다고 가정해봅시다.
@FunctionalInterface
interface MyFunction {
int apply(int x, int y);
}
이를 람다 표현식으로 구현해보겠습니다.
MyFunction add = (x, y) -> x + y;
MyFunction subtract = (x, y) -> x - y;
MyFunction multiply = (x, y) -> x * y;
이제 add, subtract, multiply는 각각 두 개의 정수를 입력받아 연산 결과를 반환하는 함수를 나타내게 됩니다.
다음은 람다 표현식을 이용하여 리스트 요소를 출력하는 예제 코드입니다.
List<String> list = Arrays.asList("메시", "호날두", "손흥민");
# 리스트의 각 요소를 입력받아 해당 요소를 출력
list.forEach((str) -> System.out.println(str));
이를 통해 불필요한 반복문을 사용하지 않고도 간단하게 리스트 요소를 출력할 수 있습니다.
반응형
(추가)람다 표현식을 이용한 코드 예제
- 람다 표현식을 이용한 정렬
List<String> names = Arrays.asList("Messi", "Ronaldo", "Son", "Neymar");
// 문자열 길이를 기준으로 정렬
Collections.sort(names, (s1, s2) -> s1.length() - s2.length());
// 결과 출력
System.out.println(names);
- 람다 표현식을 이용한 컬렉션 요소 처리
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
// 각 요소를 2배로 만들기
numbers.replaceAll(n -> n * 2);
// 결과 출력
System.out.println(numbers);
- 람다 표현식을 이용한 쓰레드 처리
ExecutorService executorService = Executors.newSingleThreadExecutor();
// 람다 표현식을 이용하여 Runnable 객체 생성
Runnable task = () -> {
System.out.println("Task is being executed by thread: " + Thread.currentThread().getName());
};
// ExecutorService를 이용하여 스레드 실행
executorService.execute(task);
// ExecutorService 종료
executorService.shutdown();
JAVA 예외처리 방법 (try-catch, throws, try-with-resources, finally)
728x90
반응형
Comments