java函数基础入门

java函数基础入门文章目录 一 什么是函数式编程 二 函数式接口 1 函数式接口概念 2 函数式接口与其他普通接口的区别 3 JDK 内置函数式接口 三 Java8 函数式编程语法入门 四 Java 函数式接口介绍 1 Consumer 2 Function 3 Predicate 4 Supplier 六 总结 div p 在 JDK1 8 之后 Java 引入了函数式编程 可以大大简化代码 提高开发效率

大家好,我是讯享网,很高兴认识大家。






  • 一、什么是函数式编程
  • 二、函数式接口
    • 1)函数式接口概念
    • 2)函数式接口与其他普通接口的区别
    • 3)JDK内置函数式接口
  • 三、Java8函数式编程语法入门
  • 四、Java函数式接口介绍
    • 1)Consumer
    • 2)Function
    • 3) Predicate
    • 4)Supplier
  • 六、总结

在JDK1.8之后,Java引入了函数式编程,可以大大简化代码,提高开发效率,下面针对Java函数式编程入门学习进行一些举例,并详解一下它的优点。

一、什么是函数式编程

我们最常用的面向对象编程(Java)属于

命令式编程

(Imperative Programming)这种编程范式。常见的编程范式还有

逻辑式编程

(Logic Programming),

函数式编程

(Functional Programming)。

函数式编程作为一种编程范式,在科学领域,是一种编写计算机程序数据结构和元素的方式,它把计算过程当做是数学函数的求值,而避免更改状态和可变数据。简单来说:一切都是数学函数。函数式编程语言里也可以有对象,但通常这些对象都是恒定不变的 —— 要么是函数参数,要什么是函数返回值。函数式编程语言里没有 for/next 循环,因为这些逻辑意味着有状态的改变。相替代的是,这种循环逻辑在函数式编程语言里是通过递归、把函数当成参数传递的方式实现的。

二、函数式接口

1)函数式接口概念

首先需要清楚一个概念:函数式接口——

它指的是有且只有一个未实现的方法的接口

,一般通过这个注解来表明某个接口是一个函数式接口。函数式接口是Java支持函数式编程的基础。比如如下接口就是一个函数式接口:

@FunctionalInterfacepublic interface FunctionTest {void method();}

2)函数式接口与其他普通接口的区别

  • 函数式接口中只能有一个抽象方法(这里不包括与Object的方法重名的方法)
  • 接口中唯一抽象方法的命名并不重要,因为函数式接口就是对某一行为进行抽象,主要目的就是支持 表达式
  • 自定义函数式接口时,应当在接口前加上标注(虽然不加也不会有错误)。编译器会注意到这个标注,如果你的接口中定义了第二个抽象方法的话,编译器会抛出异常。

至于表达式可以详细参考:

Lambda表达式使用详解教程

Lambda表达式是JDK8推出一个重要的新特性,虽然看着很高大上,其实Lambda表达式的本质只是一个 […]

  • 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

  • br /> 包下,包含了很多接口,用来支持Java8的函数式编程,该包中的常用的函数式接口java函数基础入门有:

    br />

    img src="https://www.panziye.com/wp-content/uploads/2021/12/2422.png" alt="Java函数式编程入门学习举例与优点详解" title="Java函数式编程入门学习举例与优点详解" alt="" class="aligncenter size-full wp-image-4028" />

    直接使用一段代码来给函数式接口对象赋值

    。而且最为关键的是,这个函数式对象因为本质上仍旧是一个对象,因此可以做为其它方法的参数或者返回值,可以与原有的代码实现无缝集成!

    有输入输出

    的,因此它含有一个方法,包含一个输入与一个输出。

    br /> 除apply方法外,它还有compose与andThen及indentity三个方法,其使用见下述示例:

    版权声明:

    本站文章,如无说明,均为本站原创,转载请注明文章来源。如有侵权,请联系博主删除。

    小讯
    上一篇 2025-01-02 19:57
    下一篇 2024-12-25 20:34

    相关推荐

    版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
    如需转载请保留出处:https://51itzy.com/kjqy/4920.html