LongStream — long 값의 순차·병렬 집계 연산을 지원하는 스트림
LongStream — long 값의 순차·병렬 집계 연산을 지원하는 스트림
원시 long 값 요소의 순차 및 병렬 집계 연산을 지원하는 시퀀스를 나타내는 인터페이스예요. Stream의 long 원시 타입 특화 버전이에요.
본문
public interface LongStream extends BaseStream<Long, LongStream>
LongStream은 IntStream과 유사하되 long 값을 다뤄요. 스트림, 스트림 연산, 스트림 파이프라인, 병렬성에 대한 자세한 명세는 Stream 및 java.util.stream 문서를 참고해요.
주요 중간 연산
filter(LongPredicate predicate)— 조건과 일치하는 요소로 구성된 스트림을 반환해요.map(LongUnaryOperator mapper)— 함수를 적용한 결과 스트림을 반환해요.mapToInt(LongToIntFunction)/mapToDouble(LongToDoubleFunction)—IntStream·DoubleStream으로 변환해요.boxed()— 각 요소를Long으로 박싱한Stream<Long>을 반환해요.asDoubleStream()—double로 변환한 스트림을 반환해요.distinct()— 중복을 제거한 스트림을 반환해요.sorted()— 오름차순으로 정렬한 스트림을 반환해요.limit(long)/skip(long)— 요소 수를 제한하거나 건너뛰어요.takeWhile(...)/dropWhile(...)— 조건이 참인 동안 요소를 취하거나 버려요.
주요 터미널 연산
forEach(LongConsumer)/forEachOrdered(LongConsumer)— 각 요소에 대해 동작을 수행해요.sum()— 요소의 합계를 반환해요.min()/max()— 최소·최대 요소를 반환해요.average()— 요소의 산술 평균을 설명하는OptionalDouble을 반환해요.count()— 요소 수를 반환해요.reduce(...)— 요소를 축소해 단일 값으로 결합해요.anyMatch(LongPredicate)/allMatch(...)/noneMatch(...)— 조건 일치 여부를 검사해요.findFirst()/findAny()— 첫 또는 임의 요소를OptionalLong으로 반환해요.toArray()— 요소를long[]배열로 반환해요.
주요 정적 메서드
-
of(long... values)— 지정된 값으로 순차 스트림을 반환해요. -
range(long startInclusive, long endExclusive)—[start, end)범위 스트림을 반환해요. -
rangeClosed(long startInclusive, long endInclusive)— 양 끝을 포함한 범위 스트림을 반환해요. -
iterate(...)/generate(LongSupplier)— 반복·생성 스트림을 반환해요. -
builder()—LongStream용 가변 빌더를 반환해요. -
concat(LongStream a, LongStream b)— 두 스트림을 지연 연결한 스트림을 반환해요. -
도입 시점(Since): 1.8