资讯专栏INFORMATION COLUMN

Lambda表达式有参数有返回值的练习

nodejh / 3416人阅读

摘要:表达式有参数有返回值的练习需求给定一个计算器接口,内含抽象方法可以将两个数字相加得到和值使用的标准格式调用方法,完成和的相加计算调用方法方法的参数是一个接口可以使用匿名内部类使用表达式简化匿名内部类的书写优化省略定义一个方法参数传递两个

package com.itheima.demo06.Lambda;

/*

Lambda表达式有参数有返回值的练习
需求:
    给定一个计算器Calculator接口,内含抽象方法calc可以将两个int数字相加得到和值
    使用Lambda的标准格式调用invokeCalc方法,完成120和130的相加计算

*/
public class Demo01Calculator {

public static void main(String[] args) {
    //调用invokeCalc方法,方法的参数是一个接口,可以使用匿名内部类
    invokeCalc(10, 20, new Calculator() {
        @Override
        public int calc(int a, int b) {
            return a+b;
        }
    });

    //使用Lambda表达式简化匿名内部类的书写
    invokeCalc(120,130,(int a,int b)->{
        return a + b;
    });

    //优化省略Lambda
    invokeCalc(120,130,(a,b)-> a + b);
}

/*
    定义一个方法
    参数传递两个int类型的整数
    参数传递Calculator接口
    方法内部调用Calculator中的方法calc计算两个整数的和
 */
public static void invokeCalc(int a,int b,Calculator c){
    int sum = c.calc(a,b);
    System.out.println(sum);
}

}
package com.itheima.demo06.Lambda;
/*

给定一个计算器Calculator接口,内含抽象方法calc可以将两个int数字相加得到和值

*/
public interface Calculator {

//定义一个计算两个int整数和的方法并返回结果
public abstract int calc(int a,int b);

}

3.9 练习:使用Lambda标准格式(有参有返回) 题目

给定一个计算器Calculator接口,内含抽象方法calc可以将两个int数字相加得到和值:

public interface Calculator {
    int calc(int a, int b);
}

在下面的代码中,请使用Lambda的标准格式调用invokeCalc方法,完成120和130的相加计算:

public class Demo08InvokeCalc {
    public static void main(String[] args) {
        // TODO 请在此使用Lambda【标准格式】调用invokeCalc方法来计算120+130的结果ß
    }

    private static void invokeCalc(int a, int b, Calculator calculator) {
        int result = calculator.calc(a, b);
        System.out.println("结果是:" + result);
    }
}
解答
public static void main(String[] args) {
    invokeCalc(120, 130, (int a, int b) -> {
          return a + b;
    });
}
备注:小括号代表Calculator接口calc抽象方法的参数,大括号代表calc的方法体。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/75992.html

相关文章

  • python-函数

    摘要:局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。调用函数时,所有在函数内声明的变量名称都将被加入到作用域中。 函数(一)定义函数你可以定义一个由自己想要功能的函数,以下是简单的规则:(1)函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。(2)任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。(3)函数的第一行语句可以选择性地...

    cooxer 评论0 收藏0
  • lambda达式参数返回

    摘要:练习使用标准格式无参无返回题目给定一个厨子接口,内含唯一的抽象方法,且无参数无返回值。 3.7 练习:使用Lambda标准格式(无参无返回) 题目 给定一个厨子Cook接口,内含唯一的抽象方法makeFood,且无参数、无返回值。如下: public interface Cook { void makeFood(); } 在下面的代码中,请使用Lambda的标准格式调用invo...

    张汉庆 评论0 收藏0
  • Python入门-函数

    摘要:函数返回值支持多个,返回多个时,使用逗号分隔。如上,与这个参数按照由左到右依次赋值给形参和供函数内部使用。在传入函数时,便是将这个引用传入了函数。需要使用关键字声明将变量作用域变为函数外部非全局变量,及闭包作用域。 < 返回索引页 函数 函数定义 返回值 函数的调用 函数的参数 顺序参数 参数的默认值 可变参数 关键字参数 参数的组合 参数的专递 函数作用域 内建...

    genefy 评论0 收藏0
  • Lambda省略格式&Lambda使用前

    摘要:例如上例还可以使用的省略写法省略规则在标准格式的基础上,使用省略写法的规则为小括号内参数的类型可以省略如果小括号内有且仅有一个参,则小括号可以省略如果大括号内有且仅有一个语句,则无论是否有返回值,都可以省略大括号关键字及语句分号。 package com.itheima.demo07.Lambda; import java.util.ArrayList; /* Lambda表达式:是可...

    20171112 评论0 收藏0
  • Java8新特性之Lambda达式

    摘要:表达式说白了就是一种匿名方法,不需要方法名,修饰符,和返回值类型。就目前而言表达式只能简化接口的匿名内部类实现。 Lambda表达式说白了就是一种匿名方法,不需要方法名,修饰符,和返回值类型。 使用方法 首先在moudle的build.gradle文件中添加配置:app/build.gradle添加。 android { ... defaultConfi...

    mist14 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<