当前位置: 首页 > news >正文

Lambda表达式

👌 棒棒有言:也许我一直照着别人的方向飞,可是这次,我想要用我的方式飞翔一次!人生,既要淡,又要有味。凡事不必太在意,一切随缘,缘深多聚聚,缘浅随它去。凡事看淡点看开些,顺其自然,无意于得,就无所谓失。人生,看轻看淡多少,痛苦就远离你多少。

👌 本章简介:Lambda 表达式(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包(注意和数学传统意义上的不同)。

当前,最新版本是MyBatis 3.5.11,其发布时间是2022年09月18日。

👍  作者:get棒棒给个关注呗

👍非常重要

如果不介意麻烦动动你们的小手点个关注
 

目录

学习目标

1.什么是Lambda

2.Lambda的作用

3.如何使用Lambda

1.使用Lambda创建对象

2.Lambda完成方法引用

4.Lambda遍历集合


学习目标

  • 通过本次课程的学习,要能够熟练的使用Lambda表达式实现对象的创建
  • 通过本次课程的学习,要能够熟练的使用Lambda表达式实现方法的引用

1.什么是Lambda

Lambda表达式是Java SE 8中一个重要的新特性,使用Lambda表达式可以实现函数式编程,让代码的编写更加的简洁

基本语法:

(parameters) -> expression(parameters) -> { statements }

2.Lambda的作用

1.创建对象

使用Lambda表达式可以简化使用内名内部类创建接口对象的过程,但是不是所有的接口都能使用Lambda表达式创建对象,使用Lambda表达式创建对象的接口需要满足函数式接口,也就是接口中只能有一个抽象方法,可以使用注解@FunctionalInterface进行约束

2.方法的引用

使用 :: 可以完成方法的应用

3.如何使用Lambda

1.使用Lambda创建对象

1.1 无返回值无参数

public interface LambdaInterFace{void method();
}
​
LambdaInterFace lambdaInterFace  = ()->{ System.out.println()  }

1.2 无返回值有一个参数

public interface LambdaInterFace{void method(int a);
}
​
LambdaInterFace lambdaInterFace  = (int a)->{ System.out.println(a)  }
​
LambdaInterFace lambdaInterFace  = (a)->{ System.out.println(a)  }
​
LambdaInterFace lambdaInterFace  = a-> System.out.println(a)

1.3无返回值有多个参数

public interface LambdaInterFace{void method(int a,int b);
}
​
LambdaInterFace lambdaInterFace  = (int a,int b)->{ System.out.println(a)  }
​
LambdaInterFace lambdaInterFace  = (a,b)->{ System.out.println(a)  }
​
LambdaInterFace lambdaInterFace  = (a,b)-> System.out.println(a)

1.4 有返回值无参数

public interface LambdaInterFace{int method();
}
​
LambdaInterFace lambdaInterFace  = ()->{ return 20;  }
LambdaInterFace lambdaInterFace  = ()-> 20

1.5 有返回值有一个参数

public interface LambdaInterFace{int method(int a);
}
​
LambdaInterFace lambdaInterFace  = (a)->{ return a;  }
LambdaInterFace lambdaInterFace  = a-> a

1.5 有返回值有多个参数

public interface LambdaInterFace{int method(int a,int b);
}
​
LambdaInterFace lambdaInterFace  = (a,b)-> a+b

2.Lambda完成方法引用

在使用Lambda表达式时允许使用方法的引用,但引用的方法要和接口中方法的参数列表和返回值类型保持一致

2.1 普通方法的引用

public interface LambdaInterFace{int method(int a,int b);
}
​
​
​
public class Aoo{
​public int add(int a,int b){return a+b;}public static int  add2(int a,int b){return a+b;}
​
}
Aoo aoo = new Aoo()
// 普通方法的引用
LambdaInterFace lambdaInterFace = (a,b)-> aoo::add
​
​
// 静态方法的引用
LambdaInterFace lambdaInterFace = (a,b)-> Aoo::add2

2.2构造方法的引用

public interface LambdaInterFace{Aoo getAoo();
}
​
​
​
public class Aoo{
​private int a;private String b;public Aoo(){System.out.print("Aoo()")}
​
​public Aoo(int a,String b){System.out.print("Aoo(int a,String b)")}
​
}
​
LambdaInterFace lambdaInterFace  = () -> Aoo::new
​

4.Lambda遍历集合

ArrayList<String>  list   = new ArrayList();list.add("1");
list.add("2");
list.add("3");
list.add("4");list.forEach(System.out::println)

http://www.lryc.cn/news/5149.html

相关文章:

  • JSON数据格式【学习记录】
  • LeetCode——1234. 替换子串得到平衡字符串
  • Web自动化测试——selenium篇(二)
  • RK3399平台开发系列讲解(文件系统篇)虚拟文件系统的数据结构
  • 企业财务管理升级,智慧税务和数据可视化打造新标准
  • JFET(结型场效应管)
  • oceanbase部署--使用OBD部署obagent和promethous_grafana软件
  • 浏览器广告拦截插件| 浏览器搜索广告横飞怎么办
  • Redis优化内存篇
  • Vue原理解析
  • C# Lambda表达式含义及各种写法
  • 计算机组成原理:1. 计算机系统概论
  • 【c#】c#常用小技巧方法整理(5)—— 字符串操作类
  • 用队列实现栈VS用栈实现队列
  • MY2480-16P语音模块的使用
  • I/O 多路复用
  • 2023 最新版网络安全保姆级指南,从0到1,建议收藏!
  • 力扣39.组合总数
  • sql的case when用法详解
  • AtCoder Grand Contest 061(题解)
  • 生成系列论文:文本控制的3d点云生成 TextCraft(一):论文概览
  • IDEA常用插件
  • Spring的事务传播机制
  • Python:路径之谜(DFS剪枝)
  • 阿里巴巴在开源压测工具 JMeter 上的实践和优化
  • React Draggable插件实现拖拽功能
  • MySQL-运算符
  • Hudi-基本概念(时间轴、文件布局、索引、表类型、查询类型、数据写、数据读、Compaction)
  • 数据分享|中国各省、各市、各区县分年、分月、逐日平均气温数据(2000年~2019年)
  • steam/csgo搬砖,2023年最暴利的项目