BiFunction Interface is a part of the java.util.function package which is introduced in Java 8. It is an in-built Functional Interface. This function expect two arguments as an input and produces a result. As it is a functional interface, it can be used assignment target for lambda expression or method reference. In this post, we are going to see several implementations of BiFunction Interface by using different examples.


BiFunction Interface in Java 8 with Examples...!!! Share on X

Look at BiFunction Javadoc description below:


BiFunction Interface contains 2 methods:

  1. apply

  2. andThen

Let’s discuss these methods:


This method performs operation on the given arguments and return the function result.


This method returns a composed function that first applies this function to its input, and then applies the after function to the result. If evaluation of either function throws an exception, it is relayed to the caller of the composed function.

Lets understand above mentioned methods thorough various examples:

Example 1. ‘apply’ method

Example 2. ‘andThen’ methods

Java 8 BiFunction Interface is an absolute useful addition as part of ‘Functional Interfaces’ and can serve variety of purposes. It is quite powerful as it can be used as a higher order functions through lambda functions and above examples could help you to get better idea on how to implement it.

BiFunction Interface in Java 8 with Examples...!!! Share on X

Do you like this Post? – then check my other helpful posts:

Other Useful References:


  • Deepak Verma

    Deepak Verma is a Test Automation Consultant and Software development Engineer for more than 10 years. His mission is to help you become an In-demand full stack automation tester. He is also the founder of Techndeck, a blog and online coaching platform dedicated to helping you succeed with all the automation basics to advanced testing automation tricks. Verma Deepak