Пример #1
0
  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));
  }