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

亿创电力建设集团有限公司网站关键词有哪些关联词

亿创电力建设集团有限公司网站,关键词有哪些关联词,长沙软件培训机构排名前十,高端网站建设设计公司哪家好—— lambda 表达式 概念 lambda 表达式是一个匿名函数,可以把 lambda 表达式理解为是一段可以传递的代码。更简洁、更灵活,使 Java 的语言表达能力得到了提升lambda 表达式是作为接口的实现类的对象(万事万物皆对象) 使用语法…

—— lambda 表达式

概念

  • lambda 表达式是一个匿名函数,可以把 lambda 表达式理解为是一段可以传递的代码
  • 更简洁、更灵活,使 Java 的语言表达能力得到了提升
  • lambda 表达式是作为接口的实现类的对象(万事万物皆对象)

使用语法

  • 例:(o1,o2) -> Integer.compare(o1,o2)
  • ->:lambda 操作符 或 箭头操作符
  • -> 的左边:lambda 形参列表,对应着要重写的接口的抽象方法的形参列表
  • -> 的右边:lambda 体,对应着接口的实现类要重写的方法的方法体

语法格式

  • 无参,无返回值
        new Thread(() -> {System.out.println("hello");}).start();
  • 有一个参数,无返回值
        Consumer<Integer> a = (Integer integer) -> {System.out.println(integer);};
  • 数据类型可以省略
        Consumer<Integer> a = (integer) -> {System.out.println(integer);};
  • 只需要一个参数时,参数小括号可以省略
        Consumer<Integer> a = integer -> {System.out.println(integer);};
  • 需要两个及以上的参数,并且有返回值
        Comparator<Integer> comparator = (o1, o2) -> {return o1 - o2;};
  • 当只有一条语句时,return 和 大括号都有,则都可以省略
		Comparator<Integer> comparator = (o1, o2) -> o1 - o2;

—— 函数式接口

概念

  • 如果接口中只声明有一个抽象方法,则此接口就称为函数式接口
  • 只有给函数式接口提供实现了类的对象时,才可以使用 lambda 表达式
  • 注解:@FunctionalInterface Java8 后引入
  • 包路径:java.util.function

四大核心函数式接口

在这里插入图片描述

—— 方法引用 / 构造器引用

概念

  • 方法引用可以看做是基于 lambda 表达式的进一步刻画
  • 当需要提供一个函数式接口的实例时,我们可以使用 lambda 表达式提供此实例
    • 满足一定条件的情况下,可以使用方法引用 或 构造器引用替换 lambda 表达式
  • 方法引用作为了函数式接口的实例

使用语法

  • 格式:类(或者对象):: 方法名
  • 举例:Integer :: compare
Lists.newArrayList("a", "b", "c").forEach(System.out::println)

构造器引用

// 无参构造器
Supplier<User> userSupplier = User::new;// 有参构造器
Function<Integer, User> userFunction = User::new;

—— Stream 流式计算

概念

  • Stream 是数据渠道,用于操作数据源(集合、数组)所生成的元素序列
  • Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤、和数据映射等操作
  • 使用 Stream API 对集合数据进行操作,类似于使用 SQL 执行的数据库查询

Stream 和 Collection 区别

  • Collection 是一种静态的内存数据结构,讲的是数据;而 Stream 是计算。前者面向内存,存储在内存中;后者面向 CPU,通过 CPU 实现计算
  • Stream 不会自己存储元素、不会改变源对象
  • Stream 操作是延迟执行。这意味着他们会等到需要结果的时候才执行。即一旦执行终止操作,这就执行中间操作链,并产生结果
  • Stream 一旦执行了终止操作,就不能再调用其他中间操作或终止操作了

操作

在这里插入图片描述

		PersonBo personBo1 = new PersonBo(1, "张三");PersonBo personBo2 = new PersonBo(2, "李四");PersonBo personBo3 = new PersonBo(3, "王五");PersonBo personBo4 = new PersonBo(4, "赵六");List<PersonBo> list = new ArrayList<>();list.add(personBo1);list.add(personBo2);list.add(personBo3);list.add(personBo4);// filter 过滤(返回还是对象)list.stream().filter(t -> {return t.getId() % 2 == 0;}).forEach(System.out::println);// match:anyMatch、allMatch、noneMatch 对流中的元素进行匹配boolean y = list.stream().anyMatch(personBo -> {return personBo.getName().contains("y");});// map 将集合中的元素类型,转换成另一种数据类型list.stream().map(PersonBo::getId).forEach(System.out::println);// sorted 根据字段属性进行排序list.stream().sorted((u1, u2) -> {return u2.getId().compareTo(u1.getId());}).map(PersonBo::getId).forEach(System.out::println);// limit限制数————collect将map单个映射转为list集合list.stream().map(t -> {return t.getId();}).limit(1).forEach(System.out::println);// distinct 对流中的元素进行去重list.stream().distinct().forEach(System.out::println);// partitioningBy 根据判断的值为true还是false分为两组Map<Boolean, List<PersonBo>> collect = list.stream().collect(Collectors.partitioningBy(personBo -> {return personBo.getId() > 3;}));// groupingBy 将数据分组成多个key的形式(即groupby分组)Map<Integer, List<PersonBo>> collect1 = list.stream().collect(Collectors.groupingBy(PersonBo::getId));// reduce 计算集合总数Integer sum = list.stream().map(PersonBo::getId).reduce(Integer::sum).get();System.out.println(sum);
http://www.hkea.cn/news/15259/

相关文章:

  • 郑州做网站的公司软文文案范文
  • 网站制作工作室制作平台微信社群营销
  • 网站设计专业有哪些课程seo推广怎么样
  • 免费企业网站程序asp济南网络优化网站
  • 保山企业网站建设百度搜索链接入口
  • 哈尔滨百姓网免费发布信息镇江搜索优化技巧
  • 好的免费个人网站专业网站制作网站公司
  • 做网站需要独立ip吗网站文章优化技巧
  • 建设网站需要哪些元素网站seo优化8888
  • 外贸网站建设经验佛山营销型网站建设公司
  • 微商城网站建设推广qq群推广方法
  • 郑州做的比较好网站公司吗杭州seo 云优化科技
  • 高校网站建设方案新站如何让百度快速收录
  • 免费网站建设案例莆田seo推广公司
  • 做网页设计卖钱的网站优化网站平台
  • 邯郸网站建设中国有几个搜索引擎
  • 网站推广计划的内容百度关键词收费标准
  • 厦门建设局网站中标结果查询如何屏蔽百度广告推广
  • 自适应网站可以做伪静态页面吗友情链接的形式有哪些
  • 今日新开网站yandere搜索引擎入口
  • 哪个网站可以做ppt模板知识付费小程序搭建
  • 重庆网站推广解决方案百度关键词优化系统
  • 江西中恒建设集团有限公司网站高级搜索技巧
  • 免费b2b网站模板一个免费的网站
  • 整形美容网站源码最全的搜索引擎
  • 做网站怎么赚钱 111搜索引擎优化方法有哪几种
  • 2018年做网站赚钱免费发布软文广告推广平台
  • 潍坊网站优化公司世界大学排名
  • 网站建设与运营的预算方案模板免费大数据查询平台
  • google seo 营销网站小红书软文案例