Java

<JAVA> Stream Map메서드

Mulenga 2023. 1. 23. 17:14
728x90

 

Stream Map메서드는 무엇인가? 

- 스트림은 파라미터로 제공되는 함수(Function<T, R>관련된 함수형 인터페이스)를 적용해서 기존 요소를 새로운 요소로 매핑시키는 map이라는 메서드를 제공한다.

- 기존 값을 변경한다는 개념보다는 새로운 값을 만든다는 개념이므로 변환(transforming)  매핑(mapping) 이라는 단어를 사용한다.

 

Stream Map 사용 예제 

다음과 같은 String Type의 과일 이름이 소문자로 있다고 가정해 보자. 

        List<String> fruitsList = new ArrayList<String>();
        
        fruitsList.add("apple");
        fruitsList.add("banana");
        fruitsList.add("pear");
        fruitsList.add("grape");

 

Stream map 메서드를 통해서 과일의 이름을 대문자로 바꿔보자. 

  fruitsList = fruitsList.stream()
  .map(m-> m.toUpperCase()).collect(Collectors.toList());

 

다음과 같이 소문자였던 과일 이름들이 대문자로 바뀌어 출력된다.

APPLE
BANANA
PEAR
GRAPE

 

 이러한 Stream map 메서드는 String Type뿐만이 아니라 숫자 Type의 결과에도 영향을 미칠 수 있다. 

 예를 들어, 다음과 같은 숫자 Type의 점수 List가 있다고 가정하자.

 List<Integer> score = new ArrayList<Integer>();
        
        score.add(30);
        score.add(40);
        score.add(50);
        score.add(60);

 

점수 List에서 결과를 2배씩 증가시켜보겠다. 

score = score.stream()
.map(m-> m*2).collect(Collectors.toList());

 

그렇다면 결과는 다음과 같다. 

60
80
100
120

 

이와 같이 Stream map 메서드를 통해서 우리는 쉽게 요소를 새로운 요소로 매핑시킬 수 있다. 

'Java' 카테고리의 다른 글

JUnit5란 무엇인가?  (0) 2023.03.01
<JAVA> Stream sorted 메서드  (0) 2023.01.24
<Java> Stream Filter 메서드  (0) 2023.01.21
JAVA Stream  (0) 2023.01.20
[Java] 이클립스 JDK 환경 설정  (0) 2022.05.14