java: incompatible types: incompatible parameter types in lambda expression
If you are using a Functional Interface with a method that says takes in to two arguments and when implementing the method using Lambda expression you pass in not two you will get this error. Let's see an example
Example: Functional Interfacepackage org.code2care;
@FunctionalInterface
public interface Calculate {
public int sum(int number1,int number2);
}
Lambda Expression:
package org.code2care;
public class Example {
public static void main(String[] args) {
Calculate calculate = (n1) -> n1; //Compilation error
System.out.println(calculate.sum(10,20));
}
}
So the fix to incompatible parameter types in lambda expression is to make sure that you pass in the correct parameters and types when trying to define a lambda expression.
public static void main(String[] args) {
Calculate calculate = (n1,n2) -> n1+n2; //fix
System.out.println(calculate.sum(10,20));
}

Provide Feedback For This Article
We take your feedback seriously and use it to improve our content. Thank you for helping us serve you better!
😊 Thanks for your time, your feedback has been registered!
Comments & Discussion
Facing issues? Have questions? Post them here! We're happy to help!