문제

자바 개념
- Stream API란?
람다식을 이용한 기술 중 하나로 데이터 소스를 조작 및 가공, 변환하여 원하는 값으로 반환해주는 인터페이스- String[] 배열 to Integer[] 배열 : `Arrays.stream(list).mapToInt(Integer::parseInt)`
- 최댓값, 최솟값 : `Arrays.stream(list).max().getAsInt()`, `Arrays.stream(list).min().getAsInt()`
풀이
String 배열을 Integer 배열로 변환할때 Stream API를 사용하여 풀이하였다.
1. String 입력값을 split을 이용해 공백 기준으로 String 배열로 만들기
2. `Arrays.strea(list).mapToInt(Integer::parseInt)` 로 String 배열을 Integer 배열로 변환해줬다.
3. strem을 사용하여 최댓값 최솟값을 구할때는 `.max().getAsInt()` 로 int 값을 얻어야한다.
4. 다시 문자열로 반환해줘야하기 때문에 StringBuilder를 사용하였다.
class Solution {
public String solution(String s) {
StringBuilder sb = new StringBuilder();
String[] list = s.split(" "); // 공백 기준 문자열 배열 생성
// 최댓값 추출
int max = Arrays.stream(list)
.mapToInt(Integer::parseInt) // String[] to Integer[]
.max()
.getAsInt();
// 최솟값 추출
int min = Arrays.stream(list)
.mapToInt(Integer::parseInt) // String[] to Integer[]
.min()
.getAsInt();
sb.append(min + " ");
sb.append(max);
return sb.toString();
}
}
'코딩 테스트 > 자바' 카테고리의 다른 글
| [프로그래머스 / 자바 / Lv.3] 43105 정수 삼각형 (5) | 2024.07.24 |
|---|---|
| [프로그래머스 / 자바 / Lv.2] 70129 이진 변환 반복하기 (0) | 2024.07.24 |
| [프로그래머스 / 자바 / Lv.2] 12924 숫자의 표현 (1) | 2024.07.23 |
| [프로그래머스 / 자바 / Lv.3] 42628 이중우선순위큐 (1) | 2024.07.22 |
| [프로그래머스 / 자바 / Lv.2] 12941 최솟값 만들기 (0) | 2024.07.11 |