모던자바인액션 2

[JAVA 자바] 람다(lambda)

🐣 람다식 람다식(Lambda expression)은 간단히 말해서 메서드를 하나의 '식(expression)'으로 표현한 것이다. 메서드를 람다식으로 표현하면 메서드의 이름과 반환값이 사라지게 되는데, 그래서 람다식은 익명 함수라고도 한다. 람다식은 메서드의 매개변수로 전달되어지는 것이 가능하고, 메서드의 결과로 반환될 수도 있다. 즉, 람다식으로 인해 메서드를 변수처럼 다룰 수 있다는 뜻이다. 보통의 메서드와 달리 이름이 없으므로 익명이라 표현한다. 람다는 메서드처럼 특정 클래스에 종속되지 않으므로 함수라고 부른다. 람다식을 메서드 인수로 전달하거나 변수로 저장할 수 있다. 익명 클래스처럼 많은 자질구레한 코드를 구현할 필요가 없기 때문에 간결하다. 람다식은 파라미터, 화살표, 바디 세 부분으로 이루..

[JAVA 자바] 스트림(Stream)

🐣 스트림의 정의 스트림이란 데이터 처리 연산을 지원하도록 소스에서 추출된 연속된 요소 라 정의할 수 있다. 각 요소에 대해서 부연 설명을 하자면 다음과 같다. 1. 데이터 처리 연산 스트림은 filter, map, reduce, find, match 등의 연산으로 데이터를 조작할 수 있게 한다. 2. 소스 스트림 소스가 될 수 있는 대상으로는 배열, 컬렉션, 임의의 수 등 다양하다. 스트림은 이러한 데이터 제공 소스로부터 데이터를 소비한다. 3. 연속된 요소 데이터 소스는 연속된 요소를 스트림에 제공한다. 연속된의 의미는 순차적으로 값에 접근한다는 뜻이다. 🐣 스트림의 장점 1. 가독성 스트림은 기존의 for문과 if문을 조합해서 코드를 짜는 것보다, 더 간결하고 가독성이 좋다. 이는 스트림이 작업을 ..

1