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

青岛高端网站开发公司微分销系统的规范问题

青岛高端网站开发公司,微分销系统的规范问题,网站制作培训课程,淘宝网站怎么做的目录 一、Lambda表达式是什么?什么场景下使用Lambda? 1.Lambda 表达式是什么 2.函数式接口是什么 第二章、怎么用Lambda 1.必须有一个函数式接口 2.省略规则 3.Lambda经常用来和匿名内部类比较 第三章、具体使用场景举例() …

目录

一、Lambda表达式是什么?什么场景下使用Lambda?

1.Lambda 表达式是什么

2.函数式接口是什么

 第二章、怎么用Lambda

1.必须有一个函数式接口

2.省略规则

3.Lambda经常用来和匿名内部类比较

   第三章、具体使用场景举例()

1.案例一,自己写一个表达式


一、Lambda表达式是什么?什么场景下使用Lambda?


1.Lambda 表达式是什么


1.Lambda 表达式本质上是一个匿名方法,是JAVA8中提供的一种新的特性(一种新的表达方式,以前旧的写法换成新的写法,可以写出更简洁、更灵活的代码)。

我们以前定义一个方法总是想到方法的五要素:

修饰符 返回值类型 方法名(参数列){方法体}

2.我要打印一段话,用Lambda翻新成一个匿名方法,语法格式如下:

以前写个方法:
public void prin(){
System.out.println(" 打印这个Lambda啊");
}现在用Lambda写:
最简单的三要素:
参数列表   操作符箭头   方法体()         ->    {System.out.println(" 打印这个Lambda啊");}

注意:直接把下面这段拿去运行是不行的,忍住先往下看:

() -> { System.out.println(" 打印这个Lambda啊");}

在这个基础上我们进行拓展丰富,在参数列表里放一个参数。

注意:这个也不能运行

有一个参数,并且无返回值;
参数列表里放个参数a       操作符箭头        方法体(参数a)              ->        System.out.println(a);

继续丰富,在参数列表里放两个参数,有返回值。

注意1:前面多了个Comparator com = 

注意2:可以复制运行了。因为这段代码前面多了一个Comparator com =,这Comparator是个接口,而且是函数式接口,那么函数式接口是什么。

//有两个以上的参数,有返回值,并且大括号方法体里头多条语句
Comparator com = (a, b) -> {
System.out.println("打印一下");  return Integer.compare(10, 11);
};

2.函数式接口是什么

接口好理解,那什么是函数式接口呢?函数式接口是有且仅有一个抽象方法(不包含object中的方法)的接口。注意:我们只需要关注抽象方法的个数,不用关注其他类型的方法个数。

如图:我们可以用注解@FunctionalInterface 检测是否为函数式接口

 
第二章、怎么用Lambda

1.必须有一个函数式接口

看了第一章我们知道,Lambda表达式前面放普通接口是不行的,必须是Comparator 这种函数式接口。如图Collection接口不是函数式接口,报错了:

 把Collection接口换成函数式接口Consumer 就可以复制运行了。

//Consumer 是函数式接口
Consumer con = (x) -> System. out .println(x);con.accept( "这个可以运行打印了" );

2.省略规则

       1. 参数类型必须同时省略

       2. 一个参数时,参数的括号可省略

       3. 代码块里只有一句时,可省略大括号,分号和return

Comparator com = (x, y) -> Integer.compare(10, 13);

3.Lambda经常用来和匿名内部类比较

但注意

1.Lambda表达式虽然简洁,用()->就可以代替整个匿名内部类,但只能用于函数式接口(有仅只有一个抽象方法的接口)。匿名内部类却可以用于接口,抽象类或者普通类。举个函数式接口Runnable接口的例子:

new Thread(new Runnable() {@Overridepublic void run() {System.out.println("这是匿名内部类里传了个Runnable的实现类对象");}}).start();

用Lambda写一下

//楞是把参数都省了new Thread(() -> System.out.println("好家伙这么简洁")).start();

   第三章、具体使用举例()
 

1.案例一,自己写一个Lambda表达式

1.自己写一个函数式接口注意只能有一个抽象方法

public interface Test {
//有且仅有一个抽象方法public String Test1(String test_str);
}

2.Lambda表达式

   Test test =(str)->{ System.out.println(str); return str;};String str=test.test1("打印一下1");System.out.println(str);}

2.案例二,Lambda表达式创建线程

这是普通的匿名内部类创建线程

// 匿名内部 类new Thread(new Runnable() {@Overridepublic void run() {System.out.println("匿名对象 传递线程任务.....");}}).start();

再用Lambda表达式写

/*Lambda表达式 省略格式
1. 参数类型必须同时省略
2. 一个参数时,参数的括号可省略
3. 代码块里只有一句时,可省略大括号,分号和return  */new Thread(() -> System.out.println("Lambda表达式 启动线程...")).start();

3.案例三,Lambda表达式写Comparator接口比较器

public class Demo02_Comparator {public static void main(String[] args) {// 创建集合ArrayList<Integer> list = new ArrayList<>();Collections.addAll(list, 1, 3, 2, 4, 5, 7, 9, 8, 6);// sort(list);  升序 排序Collections.sort(list);System.out.println(list);分割线///// reverse(list)方法反转指定列表中元素的顺序。Collections.reverse(list);System.out.println(list);//分割线////*//匿名内部类  写降序排序,Collections.sort(List<T> list, Comparator<? super T> c)Collections.sort(list, new Comparator<Integer>() {@Overridepublic int compare(Integer o1, Integer o2) {return o2 - o1;}});*////分割线/////lambda表达式写 降序排序//Collections.sort(list,(Integer o1, Integer o2)->{ return o2 - o1;});//简化格式Collections.sort(list,(o1,o2)->  o2 - o1);System.out.println(list);

http://www.yayakq.cn/news/462825/

相关文章:

  • 写作网站挣钱对比网页页面怎么设计
  • 建设400官方网站全球最热门网站
  • 网站的规划与建设案例分析wordpress展示word
  • 杭州外贸网站建设公司排名设计素材网站有哪些免费
  • 深圳移动端网站建设模板河南郑州网站设计公司
  • 中山移动网站建设多少钱织梦新闻门户网站模板 原创精品
  • 怀化网站seo网站建设无锡海之睿
  • 株洲发布信息网短视频seo推广
  • 建设网站是不是必须要服务器素材网站 模板
  • 应价交易系统网站开发金湖有哪里做网站的
  • 龙岩网站建设要多久自己做网站可以揽业务吗
  • 网站开发过程和里程碑如何做盗版电影网站
  • 婚庆公司网站建设总结报告网页设计psd源文件
  • 网站飘窗怎么做wordpress short ping
  • 网站建设与开发课程介绍河北邢台移动网站建设
  • 莆田个人外贸网站建设如何给企业做网站
  • 网站内部seo优化包括表白网站制作代码
  • 莆田建设信息网站三只松鼠口碑营销案例
  • 沈阳市城市建设网站如何把做的网站与域名连接
  • 企业网站开发汇报广州百度网站建设公司
  • 手机商城网站模板网站建设网页制
  • 怎么查看网站备案成品网站好吗
  • 高端网站建设联系方式网站 如何添加备案号
  • 网站域名购买后能修改吗重庆设计公司有哪些
  • 实用网站设计步骤cpa网站建设教程
  • 怎么做自己的网站卖东西东乡族网站建设
  • 网站建设服务好公司排名公司购买网站建设费用会计分录
  • 关于建筑工程的网站做网站图片格式
  • 企业做网站需要准备什么资料网站开发制作公司名称
  • 网站正在建设中怎么办电子书网站 自己做