From Wikipedia about Arity,
In logic, mathematics, and computer science, the arity /ˈærɪti/ (About this soundlisten) of a function or operation is the number of arguments or operands that the function takes
A binary function takes two arguments.
Example: {f(x,y)=2xy}
From Java definition
Represents a function that accepts two arguments and produces a result. This is the two arity specialization of Function.
here are some test cases to understand deeply biFunction.
public void testFindEvenNumbers()
{
//given
BiFunction<List<Integer>, Predicate<Integer>, List<Integer>> evenFinder = (list, even) -> {
return list.stream().filter(even).collect(Collectors.toList());
};
//when
List<Integer> evenNumList = evenFinder.apply(
Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8),
(num) -> num % 2 == 0
);
//verify
MatcherAssert.assertThat(evenNumList, hasItems(2, 4, 6, 8));
}
No comments:
Post a Comment