函数式接口

1、无参无返回值

public interface MyInterOne {
    void fun();
}
public interface DemoOneInterface {

    // zhelikeijiangqitiquchulai
    static void print(MyInterOne myInterOne) {
        Objects.requireNonNull(myInterOne);
        myInterOne.fun();
        // zhongdianshishangmianzhgefangfazuowanjiukeyile
        // xiamianhaikeyilaizuoshenme
        System.out.println("shangmiandezhixignwanle,wolaizuoyihuier");
        // zidingyicaozuoleixing,danshiduiyuwomenlaishuo
    }
}
public class DemoOne implements DemoOneInterface {

    public static void main(String[] args) {
        DemoOneInterface.print(()->{
            System.out.println("hello,world");
        });
    }
}

2、无参有返回值

public interface MyInterface3 {
    String fun();
}
public interface DemoTwoInterface {
    static String print(MyInterface3 myInterface3){
        Objects.requireNonNull(myInterface3);
        return myInterface3.fun();
    }
}
public class DemoTwo {
    public static void main(String[] args) {
        final String print = DemoTwoInterface.print(() -> "hello,world");
        System.out.println("---------");
        System.out.println(print);
    }
}

3、有参无返回值

public interface MyInterface4 {
    void fun(int i);
}
public interface DemoThreeInterface {
    static void print(MyInterface4 myInterface4){
        Objects.requireNonNull(myInterface4);
        myInterface4.fun(6666);
    }
}
public class DemoThree {
    public static void main(String[] args) {
        // youcanwufanhuizhi,laiduizhelidezhijinxignchuli
        DemoThreeInterface.print(i -> {
            System.out.println("value is : "+i);
        });
    }
}

4、有参有返回值

public interface MyInterface4 {
    String print(int i);
}
public interface DemoFourInterface {
    static String print(MyInterface4 myInterface4){
        return myInterface4.print(666);
    }
}
public class DemoFour {
    public static void main(String[] args) {
        final String print = DemoFourInterface.print(i -> {
            final String s = String.valueOf(i)+123456;
            return s;
        });
        System.out.println("=============");
        System.out.println(print);
    }
}
上一篇:Java面向对象之interface接口


下一篇:接口