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的资料请关注脚本之家其它相关文章!

相关文章

  • 一文读懂Spring Bean的生命周期

    一文读懂Spring Bean的生命周期

    今天我们来说一说 Spring Bean 的生命周期,小伙伴们应该在面试中经常遇到,这是正常现象,本文让更多的小伙伴们可以轻松的读懂 Spring Bean 的生命周期
    2023-03-03
  • Mybatis的一级缓存和二级缓存原理分析与使用

    Mybatis的一级缓存和二级缓存原理分析与使用

    mybatis-plus 是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生,这篇文章带你了解Mybatis的一级和二级缓存
    2021-11-11
  • Java自带定时任务ScheduledThreadPoolExecutor实现定时器和延时加载功能

    Java自带定时任务ScheduledThreadPoolExecutor实现定时器和延时加载功能

    今天小编就为大家分享一篇关于Java自带定时任务ScheduledThreadPoolExecutor实现定时器和延时加载功能,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • springboot CommandLineRunner接口实现自动任务加载功能

    springboot CommandLineRunner接口实现自动任务加载功能

    这篇文章主要介绍了springboot CommandLineRunner接口实现自动任务加载功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • java8 BigDecimal类型的List求和方式

    java8 BigDecimal类型的List求和方式

    这篇文章主要介绍了java8 BigDecimal类型的List求和方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-11-11
  • Security6.4.2 自定义异常中统一响应遇到的问题

    Security6.4.2 自定义异常中统一响应遇到的问题

    本文主要介绍了Security6.4.2 自定义异常中统一响应遇到的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • 解决maven maven.compiler.source和maven.compiler.target的坑

    解决maven maven.compiler.source和maven.compiler.target的坑

    这篇文章主要介绍了解决maven maven.compiler.source和maven.compiler.target的坑,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Spring IOC源码之bean的注册过程讲解

    Spring IOC源码之bean的注册过程讲解

    这篇文章主要介绍了Spring IOC源码之bean的注册过程讲解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • MyBatis如何实现多表查询(多对一、一对多)

    MyBatis如何实现多表查询(多对一、一对多)

    这篇文章主要给大家介绍了关于MyBatis如何实现多表查询(多对一、一对多)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • Java SpringBoot自动配置原理详情

    Java SpringBoot自动配置原理详情

    这篇文章主要介绍了Java SpringBoot自动配置原理详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-07-07

最新评论