方法引用
把已经有的方法拿过来用,当做函数式接口中抽象方法的方法体
1.什么是方法引用?
当做函数式接口中抽象方法的方法体把已经存在的方法拿过来用,
2.::是什么符号?
方法引用符
3.方法引用时要注意什么?
需要有函数式接口
被引用方法必须已经存在
被引用方法的形参和返回值需要跟抽象方法保持一致被引用方法的功能要满足当前的需求
方法引用的分类
引用静态方法
格式:类名::静态方法
范例:Integer::parseInt
package demo3;
import java.util.ArrayList;
import java.util.Collections;
public class a1 {
public static void main(String[] args) {
ArrayList<String> list =new ArrayList<>();
Collections.addAll(list,"1","2","3");
list.stream().map(Integer::parseInt)
.forEach(s ->System.out.println(s));
}
}
引用成员方法
格式:对象::成员方法
1.其他类:其他类对象::方法名
2.本类:this::方法名
3..父类:super::方法名
引用构造方法
引用构造方法
格式:类名::new
范例:student::new
使用类名引用成员方法
格式:类名::成员方法范例:string::substring
引用数组的构造方法
格式:数据类型门::new范例:int[]::new
总结
1.什么是方法引用?
把已经存在的方法拿过来用,当做函数式接口中抽象方法的方法体
2.::是什么符号?
方法引用符
3.方法引用时要注意什么?
需要有函数式接口
被引用方法必须已经存在
被引用方法的形参和返回值需要跟抽象方法保持一致
被引用方法的功能要满足当前的需求
引用方法
1.引用静态方法
类名::静态方法
2.引用成员方法
对象::成员方法
this::成员方法
super::成员方法
3.引用构造方法
类名::new
4.使用类名引用成员方法类名::成员方法
5.引用数组的构造方法数据类型[::new