LongBinaryOperator

LongBinaryOperator (long 이항 연산자)

두 개의 long 값 피연산자에 대한 연산을 나타내고 long 값 결과를 생성하는 함수형 인터페이스예요. BinaryOperator의 long 원시 타입 특수화예요.

출처: Java API Reference

본문

LongBinaryOperator의 추상 메서드는 applyAsLong(long, long)로 두 long 인자를 받아 long을 반환해요. 박싱 없이 원시 long으로 동작해 성능이 좋아요.

@FunctionalInterface
public interface LongBinaryOperator
LongBinaryOperator max = (a, b) -> Math.max(a, b);
LongBinaryOperator add = (a, b) -> a + b;

long m = max.applyAsLong(3_000_000_000L, 2_000_000_000L);
long s = add.applyAsLong(1_000_000_000L, 2_000_000_000L);

LongStream.reduce의 조합 함수로 자주 쓰여요.

long sum = LongStream.of(1L, 2L, 3L).reduce(0L, (a, b) -> a + b); // 6

함수형 메서드는 applyAsLong(long, long)예요. 코드와 시그니처는 원문 그대로 보존돼요.

더 알아보기