• java内置的四大函数式接口


    一、Consumer:消费型接口(void accept(T t))

    举一个例子

    public class LambdaTest {
        @Test
        public void test() {
            happyTime(500, new Consumer<Double>() {
                @Override
                public void accept(Double aDouble) {
                    System.out.println("快乐的时光总是短暂!");
                }
            });
        }
    
        public void happyTime(double money, Consumer<Double> con){
            con.accept(money);
        }
    }
    // 定义了一个happyTime方法,该方法接收一个函数式接口(只含有一个抽象方法的接口,这里就是accept)
    // java8以前我们用匿名内部类
    
    public class LambdaTest {
        @Test
        public void test() {
            happyTime(500, money -> System.out.println("快乐的时光总是短暂"));
        }
    
        public void happyTime(double money, Consumer<Double> con){
            con.accept(money);
        }
    }
    // 这里采用lambda的写法, 首先要明白,happyTime的第二个参数,是一个函数式接口,实际在传入的时候要传入该接口的实现类的对象,这里采用lambda表示式实现
    //为何在happyTime中要调accept()方法?
    // 在调用happyTime()方法的时候,执行到con.accept(money);这一步
    // 其实就是该接口实现类重写了该方法,然后调该实现类对象的方法即可
    // 结合两种写法:可以看到也就是执行System.out.println("快乐的时光总是短暂!");这一句
    //这一句就是接口实现类的重写accept方法的方法体
    
    二、其余三大内置函数接口,及衍生接口与这差不多,不再说了!
    你所看得到的天才不过是在你看不到的时候还在努力罢了!
  • 相关阅读:
    Postman请求Https接口与认证
    HTML实用
    ORM实例教程_转
    web跨域问题CORS
    gin入门
    swagger应用
    k8s之容器
    腾讯高级工程师:如何从头开始写游戏服务器框架_转
    tensorflow入门
    sublime Text 3实用功能和常用快捷键收集
  • 原文地址:https://www.cnblogs.com/heliusKing/p/10982579.html
Copyright © 2020-2023  润新知