728x90
반응형
질문 : Java 8 스트림을 어레이로 변환하는 방법은 무엇입니까?
Stream
을 배열로 변환하는 가장 쉽고 짧은 방법은 무엇입니까?
답변
가장 쉬운 방법은 toArray(IntFunction<A[]> generator)
메서드를 사용하는 것입니다. 이것은 메소드에 대한 API 문서 에서 제안됩니다.
String[] stringArray = stringStream.toArray(String[]::new);
그것이하는 일은 정수 (크기)를 인자로 받고 String[]
new String[]
의 오버로드 중 하나입니다.
IntFunction
작성할 수도 있습니다.
Stream<String> stringStream = ...;
String[] stringArray = stringStream.toArray(size -> new String[size]);
IntFunction<A[]> generator
의 목적은 배열 크기 인 정수를 새 배열로 변환하는 것입니다.
예제 코드 :
Stream<String> stringStream = Stream.of("a", "b", "c");
String[] stringArray = stringStream.toArray(size -> new String[size]);
Arrays.stream(stringArray).forEach(System.out::println);
인쇄물:
a
b
c
출처 : https://stackoverflow.com/questions/23079003/how-to-convert-a-java-8-stream-to-an-array
728x90
반응형
'프로그래밍 언어 > JAVA' 카테고리의 다른 글
자바 스크립트 private 메서드 (0) | 2021.11.01 |
---|---|
Kotlin 소스 파일을 자바 소스 파일로 변환하는 방법 (0) | 2021.11.01 |
자바 스크립트 객체의 쿼리 문자열 인코딩 (0) | 2021.10.21 |
오류 : java: javacTask: source release 8 requires target release 1.8 (0) | 2021.10.19 |
Java [duplicate]에서 구분 기호 (split의 반대)를 사용하여 배열 요소를 결합하는 빠르고 쉬운 방법 (0) | 2021.10.19 |