zoukankan      html  css  js  c++  java
  • java函数式编程的形式

    java中没有真正的函数变量;

    一、所有的函数(拉姆达)表达式,都被解释为functional interface

    @FunctionalInterface

    interface GreetingService 

    {

        void sayMessage(String message);

    二、通过返回容器类型实现串联;

    prices.stream()  

    .filter(price -> price.compareTo(BigDecimal.valueOf(20)) > 0)  

    .map(price -> price.multiply(BigDecimal.valueOf(0.9)))  

    .reduce(BigDecimal.ZERO, BigDecimal::add);  

    三、函数式接口

    函数式接口可以对现有的函数友好地支持 lambda。

    JDK 1.8 之前已有的函数式接口:

    • java.lang.Runnable
    • java.util.concurrent.Callable
    • java.security.PrivilegedAction
    • java.util.Comparator
    • java.io.FileFilter
    • java.nio.file.PathMatcher
    • java.lang.reflect.InvocationHandler
    • java.beans.PropertyChangeListener
    • java.awt.event.ActionListener
    • javax.swing.event.ChangeListener

    JDK 1.8 新增加的函数接口:

    • java.util.function

    参考文献

    https://www.runoob.com/java/java8-functional-interfaces.html

  • 相关阅读:
    解析库之 beautifulsoup模块
    请求库之 selenium模块
    请求库之 requests模块
    一句话
    JPA学习03
    JPA学习02
    JPA学习01
    SpringData学习04
    SpringData学习03
    SpringData学习02
  • 原文地址:https://www.cnblogs.com/feng9exe/p/11843088.html
Copyright © 2011-2022 走看看