338Lambda标准格式
Lambda表达式的标准格式:
由三部分组成
a.—些参数
b.一个箭头
c.一段代码格式:
(参数列表)->{一些重写方法的代码}
解释说明格式:
():接口中抽象方法的参数列表,没有参数,就空着;有参数就写出参数,多个参数使用逗号分隔
->:传递的意思,把参数传递给方法体{}
{}:重写接口的抽象方法的方法体
匿名内部类中最关键的内容是方法参数, 方法体, 返回值。 所以最好的方式是只关注这核心的三个内容。 lambda表达式就是只关注着三个内容 Lambda表达式的标准格式: (参数类型 参数名) -> { 方法体; 返回值; } 注意: 1. 小括号里面可以写多个参数,多个参数之间用逗号隔开。 2. ->是一个运算符,表示指向性动作。 3. 大括号中要写方法体和返回值, 和之前传统方法的写法基本一致。 Lambda表达式可以省略面向对象中条条框框,让我们只关注最核心的内容。 函数式编程思想: 可推导,就是可省略。 因为Thread构造方法中要传递一个Runnable接口类型的参数,所以能够推导出来参数类型, 所以可以省略new Runnable 因为实现接口的时候要重写接口中的抽象方法, 重写之后的方法修饰符 返回值类型 方法名要和父类一致,所以我们可以省略要重写的方法的修饰符 返回值类型这些内容。 Lambda表达式是匿名内部类的简化写法 public class Demo02Inner { public static void main(String[] args) { //创建Runnable接口的实现类对象 MyTask myTask = new MyTask(); new Thread(myTask).start(); //使用匿名内部类实现 new Thread(new Runnable() { @Override public void run() { System.out.println(Thread.currentThread().getName() + "执行了"); } }).start(); //使用Lambda表达式完成多线程 new Thread(() -> { System.out.println(Thread.currentThread().getName() + "执行了"); }).start(); }
public static void main(String[] args) {
//简化代码
new Thread(new Runnable() {
@Override
public void run() {
System.out.println(Thread.currentThread().getName()+"新的线程创建了");
}
}).start();
//使用Lambda方式实现多线程
new Thread(()->{
System.out.println(Thread.currentThread().getName()+"新的线程创建了");
}
).start();
}

浙公网安备 33010602011771号