0
点赞
收藏
分享

微信扫一扫

java-lambda

unadlib 2022-02-10 阅读 109
java

lambda表达式

匿名内部类:可以是接口,可以是抽象类,可以是具体类。
lambda表达式:只能是接口

匿名内部类:接口中可以有多个抽象方法
lambda表达式:接口中只能有一个抽象方法

new Thread(new Runnable(){
    public void run(){
		sout("匿名内部类创建类接受参数为接口")}
}).start();

new Thread(() -> {
	sout("类接受参数为接口的lambda表达式")
}).start();

method(new interface(){
	public void run(){
		sout("匿名内部类形式调用形参为接口的方法")
	}
});

method(() -> {
	sout("lambda表达式形式调用形参为接口的方法");
});

//参数的类型可以省略
//多个参数时,不能只省略一个
method((int x) -> {
	return x;
});
method((x) -> {
	return x;
});

//如果参数只有一个,小括号可以省略
method(x->{
	return x;
});
//如果代码块语句只有一条,可以省略大括号和分号省略
//如果代码块包括return,return也要省略
method(x->sout(x));
method(x->x);
举报

相关推荐

0 条评论