Lambda表达的基本用法:

2022-07-27,,

语法格式1:没有参数,也没有返回值
() -> System.out.println(“Hello Lambda”);

语法格式2:有一个参数,没有返回值
(x) -> System.out.println(x * x);
说明:如果只有一个参数,那么小括号可以省略

语法格式3:有多个参数,没有返回值,格式和语法格式2相同
(x, y) -> System.out.println(x + y);

语法格式4:接口中需要重写的方法,方法内容有多句,需要给多句话加上大括号
(x, y) -> {int result = x + y; return result;}

注意事项:如果Lambda体中语句只有一句,那么大括号可以省略不写;如果大括号中只有一条语句,并且是return语句,那么return关键字也可以省略不写(如果要省略return关键字,就必须省略大括号)
例如:(x, y) -> x + y

package test;

public class Demo03 {

	public static void main(String[] args) {
		//匿名内部类       无参无返回值类型
		Inter1 it = new Inter1() {
			public void sayHello() {
				System.out.println("匿名内部类实现Inter1");			
			}	
		};
		it.sayHello();
		
		
		
		//匿名内部类       有参有返回值类型
	   Inter2 it2 = new Inter2() {
		public int add(int x, int y) {		
			return x+y;		
		}};
		System.out.print("匿名内部类实现Inter2: ");
		System.out.println(it2.add(4, 5));
		
		//匿名内部类       有参无返回值类型
		Inter3 it3 = new Inter3() {

			@Override
			public void sayHello(String str) {
				System.out.println("匿名内部类实现Inter3 hello :"+str);
				
			}};
			it3.sayHello("张三");
		
		
	
		
		//lambada 表达式    无参无返回值类型
		Inter1 h = ()->System.out.println("lambda表达式实现的Inter1");
		h.sayHello();
		
		//lambada 表达式    有参有返回值类型
		Inter2 h2 =(x,y)->x+y;
		int x =h2.add(4, 5);
		System.out.println("lambda表达式实现的Inter2: "+x);
		
		
		//lambada 表达式    有参无返回值类型
		Inter3 h3 = (name)->System.out.println("lambda表达式实现的Inter3  hello :"+name);
		h3.sayHello("李四");
		

		
	}
	
	
}
interface Inter1{
	void sayHello();
}


interface Inter2{
	int add(int x,int y);	
}

interface Inter3{
	void sayHello(String str);
	
}

本文地址:https://blog.csdn.net/stop_here_find/article/details/109648138

《Lambda表达的基本用法:.doc》

下载本文的Word格式文档,以方便收藏与打印。