Java8函数式接口UnaryOperator用法示例

 更新时间:2023年07月09日 10:16:42   作者:今夜有点儿亮  
这篇文章主要介绍了Java8函数式接口UnaryOperator用法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

Java 8函数式接口UnaryOperator<T>

UnaryOperator<T> 是 Java 8 中的一个函数式接口,是 Function<T, T> 的子接口。它表示接受一个输入参数和返回值都是相同类型 T 的操作。

UnaryOperator<T> 接口用法示例

import java.util.function.UnaryOperator;
public class UnaryOperatorExample {
    public static void main(String[] args) {
        // 示例1:对整数进行平方运算
        UnaryOperator<Integer> square = num -> num * num;
        int result = square.apply(5);
        System.out.println(result); // 输出: 25
        // 示例2:添加感叹号到字符串末尾
        UnaryOperator<String> addExclamation = str -> str + "!";
        String text = addExclamation.apply("Hello");
        System.out.println(text); // 输出: Hello!
        // 示例3:组合多个函数
        UnaryOperator<Integer> incrementAndSquare = num -> num + 1;
        incrementAndSquare = incrementAndSquare.andThen(square);
        result = incrementAndSquare.apply(5);
        System.out.println(result); // 输出: 36
    }
}

在示例1中,我们创建了一个 UnaryOperator<Integer> 对象 square,用于对整数进行平方运算。通过调用 apply 方法,并将数字 5 作为参数传入,我们可以得到结果 25。

在示例2中,我们创建了一个 UnaryOperator<String> 对象 addExclamation,用于在字符串末尾添加感叹号。通过调用 apply 方法,并将字符串 "Hello" 作为参数传入,我们可以得到结果 "Hello!"。

在示例3中,我们将两个函数 incrementAndSquare 和 square 进行组合。

首先将传入的整数加1,然后对结果进行平方运算。通过调用 andThen 方法,我们可以得到一个新的 UnaryOperator 对象 incrementAndSquare,它将传入的整数加1并对结果进行平方运算。最终,通过调用 apply 方法,并将数字 5 作为参数传入,我们可以得到结果 36。

以上就是Java8函数式接口UnaryOperator用法示例的详细内容,更多关于Java8函数式接口UnaryOperator的资料请关注脚本之家其它相关文章!

相关文章

  • 简单谈谈Java 中的线程的几种状态

    简单谈谈Java 中的线程的几种状态

    这篇文章主要介绍了简单谈谈Java 中的线程的几种状态的相关资料,需要的朋友可以参考下
    2020-02-02
  • Javaweb El表达式实例详解

    Javaweb El表达式实例详解

    EL全称 Expression Language(表达式语言),这篇文章主要介绍了Javaweb El表达式实例详解的相关资料,非常具有参考借鉴价值,感兴趣的朋友一起学习吧
    2016-05-05
  • Java程序开发中abstract 和 interface的区别详解

    Java程序开发中abstract 和 interface的区别详解

    abstract class和interface在Java语言中都是用来进行抽象类。但是两者有什么区别呢,接下来小编给大家带来了abstract 和 interface的区别详解,感兴趣的朋友一起学习吧
    2016-06-06
  • java实现时钟效果

    java实现时钟效果

    这篇文章主要为大家详细介绍了java实现时钟效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • Java postgresql数组字段类型处理方法详解

    Java postgresql数组字段类型处理方法详解

    这篇文章主要介绍了Java postgresql数组字段类型处理方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • Java基础之Web服务器与Http详解

    Java基础之Web服务器与Http详解

    无论你是前端开发者还是后端开发者,以及测试工程师,这篇文章的知识都是你需要弄懂的。读完这一篇文章,将全面弄懂 HTTP 协议、TCP 协议,面试官再也难不倒你相关知识
    2021-09-09
  • SpringBoot中验证用户上传的图片资源的方法

    SpringBoot中验证用户上传的图片资源的方法

    这篇文章主要介绍了在SpringBoot中验证用户上传的图片资源,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • 详解Spring Boot Junit单元测试

    详解Spring Boot Junit单元测试

    本篇文章主要介绍了详解Spring Boot Junit单元测试,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • Java中的CompletableFuture使用解析

    Java中的CompletableFuture使用解析

    这篇文章主要介绍了Java中的CompletableFuture使用解析,为什么CompletableFuture要定制化线程池,因为默认的线程池是ForkJoinPool,这个线程池的最大线程数默认是你的电脑的线程数数减1,假如我线程电脑是4核8线程的,ForkJoinPool的最大线程数就是7,需要的朋友可以参考下
    2024-01-01
  • 详解Spring Boot自动装配的方法步骤

    详解Spring Boot自动装配的方法步骤

    这篇文章主要介绍了详解Spring Boot自动装配的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06

最新评论