ObjIntConsumer

ObjIntConsumer (객체+int 소비자)

객체 값 인자와 int 값 인자를 받고 결과를 반환하지 않는 연산을 나타내는 함수형 인터페이스예요. BiConsumer의 (reference, int) 특수화예요. 대부분의 다른 함수형 인터페이스와 달리 부수 효과(side-effects)를 통해 동작할 것으로 기대돼요.

출처: Java API Reference

본문

ObjIntConsumer<T>의 추상 메서드는 accept(T, int)로 객체와 int 인자를 받고 결과를 반환하지 않아요.

@FunctionalInterface
public interface ObjIntConsumer<T>

주로 상태 객체에 값을 누적하거나 객체와 정수를 함께 처리할 때 사용해요.

List<String> labels = new ArrayList<>();
ObjIntConsumer<List<String>> addLabel = (list, n) -> list.add("n=" + n);
addLabel.accept(labels, 10); // labels에 "n=10" 추가

IntSummaryStatistics를 직접 채울 때처럼 collect에 쓰이기도 해요.

ObjIntConsumer<IntSummaryStatistics> acc =
    (s, i) -> s.accept(i);

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

더 알아보기