private void testLamdaExpressions(int i, int j) { // with type declaration and return statement along with curly braces MathOperation obj = (int num1, int num2) -> { return num1 + num2; }; System.out.println("Addition......" + obj.operation(i, j)); // with type declaration obj = (int num1, int num2) -> num1 / num2; System.out.println("Division......" + obj.operation(i, j)); // without type declaration obj = (num1, num2) -> num1 * num2; System.out.println("Multiplication......" + obj.operation(i, j)); // with type declaration and return statement along with curly braces AdvancedMathOperation obj1 = (int num1) -> { System.out.println("********" + methodLevelVariable); return num1 * num1; }; System.out.println("Power(N,2)......" + obj1.operation(i)); // without type declaration and with return statement along with curly braces obj1 = (num1) -> { return num1 * num1 * num1; }; System.out.println("Power(N,3)......" + obj1.operation(i)); // without type declaration obj1 = num1 -> num1 * num1 * num1 * num1; System.out.println("Power(N,4)......" + obj1.operation(i)); }