Java8 Stream 사용 방법[map(), filter(), collect()]

김수현·2023년 6월 7일

Java

목록 보기
1/1
post-thumbnail

java8부터 지원 되는 대표적인 API인 stream에 대해 정리해놓으려고 한다.

Stream은 컬렉션, 배열에 저장되어 있는 요소들을 하나씩 참조하며 반복적인 처리를 가능하게 한다.

Stream과 람다표현식을 사용하면 for문과 if문을 사용하지 않고도 깔끔하고 직관적이게 코드를 변경 할수있다.

몰라도 당연히 처리 할수 있지만, Strame이 생겨서 컬렉션 배열 계열의 처리가 간단하게 할수 있다 이런말로 요약할수 있다.

Stream 특징 몇가지만 알아보자

  1. Stream은 원본 데이터를 읽기만 하지, 원본데이터 변경을 하지 않는다.

  2. Stream은 정렬된 결과를 컬레션이나 배열에 담아 반환 할수있다. ( collect )

  3. Stream은 내부 반복문이며, 반복문이 코드상에 노출 되지 않는다.

map() : 요소들을 조건에 맞게 변환할수 있다.

  • 원본데이터가 변경되지 않는점을 유심히 보자

<결과>

출력 결과는 아래에서 자세히 확인해 보시기 바랍니다.

filter() : 스트림내에 있는 요소에 대해 필터링 한다.

<결과>

출력된 결과에 대해 아래에서 자세히 확인해 보시기 바랍니다.

filter() : 스트림내에 있는 요소에 대해 필터링 한다.

<결과>

출력된 결과에 대해 아래에서 자세히 확인해 보시기 바랍니다.

collect() : Stream 데이터를 원하는 자료형으로 변환 해준다.

위의 예제와 같이 filter로 데이터를 추출했다고 가정하면, 컬렉션이나 배열로 변환해서 반환 할수 있다.

<결과>

출력된 결과에 대해 아래에서 자세히 확인해 보시기 바랍니다.

0개의 댓글