JavaSE-22.3.2【Lambda表达式支持的方法引用:引用类方法】

 1 package day13.lesson3.p3;
 2 
 3 /*
 4 3.3 Lambda表达式支持的方法引用:引用类方法
 5 
 6     引用类方法,其实就是引用类的静态方法
 7 
 8     格式
 9         类名::静态方法
10     范例
11         Integer::parseInt
12         Integer类的方法:public static int parseInt(String s) 将此String转换为int类型数据
13 
14     练习描述
15         定义一个接口(Converter),里面定义一个抽象方法 int convert(String s);
16         定义一个测试类(ConverterDemo),在测试类中提供两个方法
17         一个方法是:useConverter(Converter c)
18         一个方法是主方法,在主方法中调用useConverter方法
19  */
20 public class ConverterDemo {
21     public static void main(String[] args) {
22         //Lambda表达式
23         /*useConverter((String s) -> {
24             return Integer.parseInt(s);
25         });*/
26         useConverter(s -> Integer.parseInt(s));
27 
28         //方法引用之引用类方法
29         useConverter(Integer::parseInt);
30 
31         //Lambda被类方法替代时,它的形式参数(s)全部传递给静态方法(parseInt)作为参数
32     }
33 
34     private static void useConverter(Converter c){
35         int num = c.convert("666");
36         System.out.println(num);
37     }
38 }
39 
40 interface Converter{
41     int convert(String s);
42 }

 

posted @ 2021-06-11 16:04  yub4by  阅读(69)  评论(0编辑  收藏  举报