Java 8 Examples

Java 8 BiConsumer Interface Example

Posted On
Posted By admin

In this blog post, I will be explaining how the Java 8 functional interface BiConsumer works. To know more about functional interfaces, you can refer this blog post.

The BiConsumer interface provides a method called accept. It accepts 2 parameters of any data type. It does not return anything, it returns a void. So it operates via side effects i.e. it modifies the parameters passed in. The BiConsumer interface is a specialization of the Consumer interface. To see an example of the Consumer interface, refer to this blog post.

BiConsumer example with Two Integer parameter

Consider the following code snippet:

</pre>
public class BiConsumerDemo {

public static void main(String args[]){
BiConsumer<Integer,Integer> displaySum = (input1,input2) -> System.out.println("Sum of inputs is "+(input1+input2));
displaySum.accept(4,8);
}

}
<pre>

Here, we have implemented the BiConsumer.accept method using a lambda expression.  This accept method accepts 2 Integer arguments. It adds them iand prints the result to the console. So when this code is executed, it will print the following output:

Sum of inputs is 12

Consumer example with Integer and String as parameter

Consider the following code snippet:

public class BiConsumerDemo {

public static void main(String args[]){
BiConsumer<String,Integer> printConcatenatedValue = (input1,input2) -> System.out.println("Result of concatenating the inputs is "+(input1+input2));
printConcatenatedValue.accept("Hello World",5);
}

}

Again, we have implemented the  BiConsumer.accept method using a lambda expression.  This accept method accepts an Integer and a String value. It concatenates both the inputs using the + operator and prints the results. So when you execute this code, it will print the following output:

 

Result of concatenating the inputs is Hello World5

You can get the source code for this example along with the code for other Java 8 examples at the Github repository here.

If you'd like to watch a detailed video tutorial of this topic or other related topics, do check out my new course Learn Java 8 New Features

If you like this post, please do let me know via the comments box below.  You can also connect with me via my Facebook Page or subscribe to my Youtube channel!

Related Post

leave a Comment