728x90
반응형
return list.stream().toArray(String[]::new);
// list.stream()
List<String> 타입인 list를 스트림(Stream<String>)으로 변환합니다.
Stream<String> stream = list.stream();
// .toArray(String[]::new)
스트림(Stream<String>)을 배열로 변환하는 과정입니다.
참고) Stream.toArray() 메서드의 원래 형태
<T> T[] toArray(IntFunction<T[]> generator)
<String> String[] toArray(IntFunction<String[]> generator)
- IntFunction<T[]> generator : 배열을 생성하는 함수
- T는 스트림 요소의 타입
즉, toArray()는 스트림의 요소 개수를 계산한 뒤, generator를 이용해 새로운 배열을 생성해.
// String[]::new ( 생성자 참조 )
(String[]::new)는 배열을 생성하는 함수입니다.
String[]::new는 익명 함수(lambda)입니다.
- list.stream() // 리스트를 스트림으로 변환
- .toArray(String[]::new) // 스트림을 String[] 배열로 변환 (필요한 크기의 배열을 생성해서 저장)
'Coding > Coding Test Grammar' 카테고리의 다른 글
[Coding Test Grammar] 숫자 문자열과 영단어(프로그래머스, 2021 카카오 채용연계형 인턴십, java) (0) | 2025.03.27 |
---|---|
[Coding Test Grammer]명예의 전당 (1)(프로그래머스, LV1, PriorityQueue 우선순위 큐) (0) | 2025.03.12 |
[Coding Test Grammar]완전탐색 (Java) (0) | 2024.09.11 |
[Coding Test Grammar] 탐욕법 (Java) (0) | 2024.09.04 |
[Coding Test Grammar] 탐욕법(Greedy)[Java, 프로그래머스] (0) | 2024.09.04 |