<U> U reduce(U identity,
BiFunction<U, ? super T, U> accumulator,
BinaryOperator<U> combiner);
A battery is a function that adds an element Stream(whose type is indicated T) to the intermediate result of the operation reduce(whose type is indicated U) and returns an updated result (also of type U).
BinaryOperator, .
, reduce a BiFunction<Integer,String,Integer>, Stream<String> . BinaryOperator<Integer> BinaryOperator<String>.
, ( U) , U. a BinaryOperator<U> ( BiFunction<U,U,U>).