博客
关于我
Day79.Java8的其他新特性复习 -Java8其他新特性
阅读量:341 次
发布时间:2019-03-04

本文共 1966 字,大约阅读时间需要 6 分钟。

Java8?????

Lambda???

Lambda????????????????????????????????Lambda??????????????

Lambda????????

  • ????

    Lambda??????????(????) -> Lambda?
    ???->??lambda????

  • ???????

    • ????????????????????->?
    • ?????????????????????????->?
    • ????????????????????
  • Lambda????

    • ??Lambda????????????{}?????->???
    • ?????????????{}???
  • Lambda????????

  • ?????

    Java8??????????????Runnable?Comparator?Function?BiFunction??????????Lambda??????

  • ????

    Method Reference?????Lambda?????????????????????????

  • ????

    Method Reference???????????????????????????????Lambda???????

    Method Reference???

  • ??????

    ????::???
    ???PrintStream ps = System.out; Consumer<String> con2 = ps::println;

  • ?????

    ??::???
    ???Comparator<Integer> com2 = Integer::compare;

  • ?????

    ??::new
    ???Supplier<Employee> sup2 = Employee::new;

  • Method Reference?????

  • ?????????

    ??????????????????????????????Method Reference?

  • ???????

    Method Reference??????????????Lambda????

  • Stream API

    Stream API?Java8?????????????????????????????????

    Stream?????

  • ????

    employees.stream() ? employees.parallelStream()?

  • ????

    Arrays.stream(int[] array)?

  • ??Stream.of()

    Stream.of(1,2,3,4)?

  • ?????

    Stream.iterate() ? Stream.generate()?

  • Stream?????

  • ?????

    • filter(Predicate p)??????
    • limit(n)????????
    • skip(n)??????
    • distinct()????
  • ??

    • map(Function f)??????
    • flatMap(Function f)??????
  • ??

    • sorted()??????
    • sorted(Comparator c)??????
  • Stream?????

  • ?????

    • allMatch(Predicate p)??????????
    • anyMatch(Predicate p)????????????
    • noneMatch(Predicate p)??????????
    • findFirst()?????????
    • findAny()??????????
  • ??

    • reduce(T identity, BinaryOperator b)????????????
  • ??

    • collect(Collector c)????????????????
  • Optional????

    Optional???????????????????????

    ??Optional??

  • Optional.of(T t)??????Optional???
  • Optional.empty()?????Optional???
  • Optional.ofNullable(T t)?????null?Optional???
  • ????

  • orElse(T t)???Optional??????????????
  • get()???Optional???????????????
  • ??

    Optional
    employeeOptional = Optional.ofNullable(boy);
    Employee employee = employeeOptional.orElse(new Employee("??"));

    ??Optional??????????????????????????

    转载地址:http://ifoq.baihongyu.com/

    你可能感兴趣的文章
    Node.js 的事件循环(Event Loop)详解
    查看>>
    node.js 简易聊天室
    查看>>
    Node.js 线程你理解的可能是错的
    查看>>
    Node.js 调用微信公众号 API 添加自定义菜单报错的解决方法
    查看>>
    node.js 配置首页打开页面
    查看>>
    node.js+react写的一个登录注册 demo测试
    查看>>
    Node.js中环境变量process.env详解
    查看>>
    Node.js之async_hooks
    查看>>
    Node.js升级工具n
    查看>>
    Node.js卸载超详细步骤(附图文讲解)
    查看>>
    Node.js基于Express框架搭建一个简单的注册登录Web功能
    查看>>
    Node.js安装与配置指南:轻松启航您的JavaScript服务器之旅
    查看>>
    Node.js安装及环境配置之Windows篇
    查看>>
    Node.js安装和入门 - 2行代码让你能够启动一个Server
    查看>>
    node.js安装方法
    查看>>
    Node.js官网无法正常访问时安装NodeJS的方法
    查看>>
    Node.js的循环与异步问题
    查看>>
    Node.js高级编程:用Javascript构建可伸缩应用(1)1.1 介绍和安装-安装Node
    查看>>
    nodejs + socket.io 同时使用http 和 https
    查看>>
    NodeJS @kubernetes/client-node连接到kubernetes集群的方法
    查看>>