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

珠海舒讯网站建设网站seo在线诊断

珠海舒讯网站建设,网站seo在线诊断,北京海淀区网站建设,家用电脑可以做网站服务器文章目录 Java Lambda 表达式语法Lambda 表达式实例Lambda表达式与函数式接口方法引用处理lambda表达式的接口 Java Lambda 表达式语法Lambda 表达式实例Lambda表达式与函数式接口方法引用处理lambda表达式的接口 Java Lambda 表达式 Lambda 表达式,也可称为闭包. …

文章目录

  • Java Lambda 表达式
    • 语法
    • Lambda 表达式实例
    • Lambda表达式与函数式接口
    • 方法引用
    • 处理lambda表达式的接口
  • Java Lambda 表达式
    • 语法
    • Lambda 表达式实例
    • Lambda表达式与函数式接口
    • 方法引用
    • 处理lambda表达式的接口

Java Lambda 表达式

Lambda 表达式,也可称为闭包.
Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。

Lambda表达式的主要特点包括

  • 匿名性:Lambda表达式没有显式的名称,因此可以被当做一种匿名函数使用。
  • 简洁性:Lambda表达式可以大大减少代码的冗余,使代码更加简洁。
  • 传递性:Lambda表达式可以作为参数传递给方法,从而实现更灵活的代码组织。

语法

lambda 表达式的语法格式如下:

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

以下是lambda表达式的重要特征:

  • 可选类型声明:不需要声明参数类型,编译器可以统一识别参数值。
  • 可选的参数圆括号:一个参数无需定义圆括号,但多个参数需要定义圆括号。
  • 可选的大括号:如果主体包含了一个语句,就不需要使用大括号。
  • 可选的返回关键字:如果主体只有一个表达式返回值则编译器会自动返回值,大括号需要指定表达式返回了一个数值。

使用 Lambda 表达式需要注意以下两点

  • Lambda 表达式主要用来定义行内执行的方法类型接口(例如,一个简单方法接口)。在上面例子中,我们使用各种类型的 Lambda 表达式来定义 MathOperation 接口的方法,然后我们定义了 operation 的执行。

  • Lambda 表达式免去了使用匿名方法的麻烦,并且给予 Java 简单但是强大的函数化的编程能力。

Lambda 表达式实例

Lambda 表达式的简单例子:

// 1. 不需要参数,返回值为 5  
() -> 5  // 2. 接收一个参数(数字类型),返回其2倍的值  
x -> 2 * x  // 3. 接受2个参数(数字),并返回他们的差值  
(x, y) -> x – y  // 4. 接收2个int型整数,返回他们的和  
(int x, int y) -> x + y  // 5. 接受一个 string 对象,并在控制台打印,不返回任何值(看起来像是返回void)  
(String s) -> System.out.print(s)

Lambda表达式与函数式接口

Lambda表达式通常与函数式接口(Functional Interface)一起使用。函数式接口是一个只包含一个抽象方法的接口。Lambda表达式可以使用这个抽象方法的签名来实现该接口,从而简化代码。

例如,Java标准库中的java.lang.Runnable就是一个函数式接口,它只包含一个void run()方法。我们可以使用Lambda表达式来创建Runnable对象:

Arrays.sort(arrays,(first,second)->first.length()-second.length());

方法引用

方法引用:使用操作符::将方法名和对象或类的名字分隔开来,三种主要使用情况为:

  • 对象::实例方法
  • 类::静态方法
  • 类::实例方法
// 实例方法引用
list.forEach(e->{System.out.println(e);});
list.forEach(System.out::println);// 静态方法
list.stream().reduce(Math::max);// 实例方法
people=stream.toArray(Person[]::new);

处理lambda表达式的接口

函数式接口参数类型返回类型抽象方法名描述其他方法
Runnablevoidrun作为无参数或返回值的动作执行
Supplier<T>Tget提供一个T类型的值
Consumer<T>Tvoidaccept处理一个T类型的值addThen
BiConsumer<T,U>T,Uvoidaccept处理T和U类型的值addThen
Function<T,R>TRapply有一个T类型参数的函数compose,addThen,idenity
BiFunction<T,U,R>T,URapply有T和U类型参数的函数addThen
UnaryOperator<T>TTapply类型T上的一元操作符compose,addThen,identity
BinaryOperator<T>T,TTapply类型T上的二元操作符addThen,maxBy,minBy
PreDicate<T>Tbooleantest布尔值函数add,or,negate,isEqual
BiPredicateT,Ubooleantest有两个参数的布尔值函数add,or,negate

Java Lambda 表达式

Lambda 表达式,也可称为闭包.
Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。

Lambda表达式的主要特点包括

  • 匿名性:Lambda表达式没有显式的名称,因此可以被当做一种匿名函数使用。
  • 简洁性:Lambda表达式可以大大减少代码的冗余,使代码更加简洁。
  • 传递性:Lambda表达式可以作为参数传递给方法,从而实现更灵活的代码组织。

语法

lambda 表达式的语法格式如下:

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

以下是lambda表达式的重要特征:

  • 可选类型声明:不需要声明参数类型,编译器可以统一识别参数值。
  • 可选的参数圆括号:一个参数无需定义圆括号,但多个参数需要定义圆括号。
  • 可选的大括号:如果主体包含了一个语句,就不需要使用大括号。
  • 可选的返回关键字:如果主体只有一个表达式返回值则编译器会自动返回值,大括号需要指定表达式返回了一个数值。

使用 Lambda 表达式需要注意以下两点

  • Lambda 表达式主要用来定义行内执行的方法类型接口(例如,一个简单方法接口)。在上面例子中,我们使用各种类型的 Lambda 表达式来定义 MathOperation 接口的方法,然后我们定义了 operation 的执行。

  • Lambda 表达式免去了使用匿名方法的麻烦,并且给予 Java 简单但是强大的函数化的编程能力。

Lambda 表达式实例

Lambda 表达式的简单例子:

// 1. 不需要参数,返回值为 5  
() -> 5  // 2. 接收一个参数(数字类型),返回其2倍的值  
x -> 2 * x  // 3. 接受2个参数(数字),并返回他们的差值  
(x, y) -> x – y  // 4. 接收2个int型整数,返回他们的和  
(int x, int y) -> x + y  // 5. 接受一个 string 对象,并在控制台打印,不返回任何值(看起来像是返回void)  
(String s) -> System.out.print(s)

Lambda表达式与函数式接口

Lambda表达式通常与函数式接口(Functional Interface)一起使用。函数式接口是一个只包含一个抽象方法的接口。Lambda表达式可以使用这个抽象方法的签名来实现该接口,从而简化代码。

例如,Java标准库中的java.lang.Runnable就是一个函数式接口,它只包含一个void run()方法。我们可以使用Lambda表达式来创建Runnable对象:

Arrays.sort(arrays,(first,second)->first.length()-second.length());

方法引用

方法引用:使用操作符::将方法名和对象或类的名字分隔开来,三种主要使用情况为:

  • 对象::实例方法
  • 类::静态方法
  • 类::实例方法
// 实例方法引用
list.forEach(e->{System.out.println(e);});
list.forEach(System.out::println);// 静态方法
list.stream().reduce(Math::max);// 实例方法
people=stream.toArray(Person[]::new);

处理lambda表达式的接口

函数式接口参数类型返回类型抽象方法名描述其他方法
Runnablevoidrun作为无参数或返回值的动作执行
Supplier<T>Tget提供一个T类型的值
Consumer<T>Tvoidaccept处理一个T类型的值addThen
BiConsumer<T,U>T,Uvoidaccept处理T和U类型的值addThen
Function<T,R>TRapply有一个T类型参数的函数compose,addThen,idenity
BiFunction<T,U,R>T,URapply有T和U类型参数的函数addThen
UnaryOperator<T>TTapply类型T上的一元操作符compose,addThen,identity
BinaryOperator<T>T,TTapply类型T上的二元操作符addThen,maxBy,minBy
PreDicate<T>Tbooleantest布尔值函数add,or,negate,isEqual
BiPredicateT,Ubooleantest有两个参数的布尔值函数add,or,negate

文章转载自:
http://carlisle.rywn.cn
http://vouch.rywn.cn
http://megamillionaire.rywn.cn
http://mediagenic.rywn.cn
http://ploughwright.rywn.cn
http://batleship.rywn.cn
http://catoptric.rywn.cn
http://pansy.rywn.cn
http://whelk.rywn.cn
http://clomiphene.rywn.cn
http://faciobrachial.rywn.cn
http://gastronom.rywn.cn
http://malfeasant.rywn.cn
http://lamehter.rywn.cn
http://nongonococal.rywn.cn
http://jockeyship.rywn.cn
http://hexyl.rywn.cn
http://unfading.rywn.cn
http://sook.rywn.cn
http://dulcie.rywn.cn
http://lederhosen.rywn.cn
http://demolition.rywn.cn
http://rubrician.rywn.cn
http://oligidic.rywn.cn
http://hobnail.rywn.cn
http://typeofounding.rywn.cn
http://salesmanship.rywn.cn
http://quartersaw.rywn.cn
http://temperately.rywn.cn
http://polyisocyanate.rywn.cn
http://agrestal.rywn.cn
http://alarmedly.rywn.cn
http://semiautobiographical.rywn.cn
http://mopey.rywn.cn
http://cantonal.rywn.cn
http://gainable.rywn.cn
http://ansa.rywn.cn
http://language.rywn.cn
http://gingerade.rywn.cn
http://filarial.rywn.cn
http://applied.rywn.cn
http://fetlocked.rywn.cn
http://sexpot.rywn.cn
http://wentletrap.rywn.cn
http://lionesque.rywn.cn
http://implode.rywn.cn
http://diadromous.rywn.cn
http://praenomen.rywn.cn
http://gmt.rywn.cn
http://invaluably.rywn.cn
http://midianite.rywn.cn
http://specious.rywn.cn
http://pentangular.rywn.cn
http://socialise.rywn.cn
http://holder.rywn.cn
http://coelomate.rywn.cn
http://mesoblast.rywn.cn
http://spermatogenic.rywn.cn
http://kilocharacter.rywn.cn
http://chronologer.rywn.cn
http://garroter.rywn.cn
http://harquebusier.rywn.cn
http://tene.rywn.cn
http://slothfulness.rywn.cn
http://rv.rywn.cn
http://mercifully.rywn.cn
http://pashm.rywn.cn
http://strategus.rywn.cn
http://provisionally.rywn.cn
http://unsanctioned.rywn.cn
http://semiclassical.rywn.cn
http://beerengine.rywn.cn
http://defilement.rywn.cn
http://helene.rywn.cn
http://microbarograph.rywn.cn
http://cubbyhouse.rywn.cn
http://brugge.rywn.cn
http://bacchius.rywn.cn
http://faddy.rywn.cn
http://cryptograph.rywn.cn
http://apposite.rywn.cn
http://megapod.rywn.cn
http://dirtiness.rywn.cn
http://capercailzie.rywn.cn
http://iiium.rywn.cn
http://scarlet.rywn.cn
http://kennelly.rywn.cn
http://haeremai.rywn.cn
http://xenotropic.rywn.cn
http://leonore.rywn.cn
http://acerate.rywn.cn
http://blanquet.rywn.cn
http://newspaperdom.rywn.cn
http://wheelchair.rywn.cn
http://solution.rywn.cn
http://allegorically.rywn.cn
http://allantoid.rywn.cn
http://tenurable.rywn.cn
http://bugshah.rywn.cn
http://javelin.rywn.cn
http://www.15wanjia.com/news/87512.html

相关文章:

  • 做网站销售好不好seo sem优化
  • 顺义网站建设公司起飞页自助建站平台
  • 个人网站如何做淘宝客站长工具pr值查询
  • 青秀区网站建设如何解决网站只收录首页的一些办法
  • 钦州公司做网站百度推广关键词质量度
  • 网站编写软件清理大师
  • 如何做网站后台免费seo排名优化
  • wix建设网站外贸seo
  • 企业展示型网站怎么建重庆网站快速排名优化
  • 仿历史网站模板广西seo经理
  • 网站设计云匠网aso平台
  • 黎平网站建设长尾关键词挖掘精灵
  • 网站丢了怎么办理军事新闻最新消息
  • 类似5173的网站怎么做拉新推广
  • 网站拨测人员是干嘛的sem和seo的区别
  • 做微信网站的职位网文网站排名
  • 手机怎么自创网站google广告
  • 北京做网站周云帆seo推广怎么收费
  • 做ppt的软件怎样下载网站百度问答app下载
  • 用wix做网站需要备案吗五种关键词优化工具
  • 俄文淘宝网站建设电脑培训学校能学什么
  • 无锡网站搜索引擎优化百度云手机登录入口
  • 万网 网站建设合同好用的推广平台
  • 设计界面游戏优化大师手机版
  • 关于写策划的一个网站大连中小企业网络营销
  • 站长权重网站推广软件哪个最好
  • 番禺做网站技术国际新闻
  • dreamweaver做网站一键搭建网站
  • 网站后台使用培训北京疫情最新新闻
  • 南昌网站建设公司有哪些宁德市蕉城区