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中处理json各种各样的转换方法(推荐)

    java中处理json各种各样的转换方法(推荐)

    下面小编就为大家分享一篇java中处理json各种各样的转换方法小结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • 浅谈JackSon的几种用法

    浅谈JackSon的几种用法

    这篇文章主要介绍了浅谈JackSon的几种用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Java详解Swing中的几种常用按钮的使用

    Java详解Swing中的几种常用按钮的使用

    这篇文章主要介绍了怎么用Java来创建和使用Swing中的几种常用按钮,按钮是我们经常要用的工具,但是你有想过自己怎么去实现它吗,感兴趣的朋友跟随文章往下看看吧
    2022-04-04
  • mybatis拦截器实现通用权限字段添加的方法

    mybatis拦截器实现通用权限字段添加的方法

    这篇文章主要给大家介绍了关于mybatis拦截器实现通用权限字段添加的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mybatis具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • Java调用CMD命令的方法与使用技巧

    Java调用CMD命令的方法与使用技巧

    在实际的开发中我们有可能会遇到 java调用 cmd命令的情况,这篇文章主要给大家介绍了关于Java调用CMD命令的方法与使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • SPRING管理XML方式过程解析

    SPRING管理XML方式过程解析

    这篇文章主要介绍了SPRING管理XML方式过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • Spring Boot 中application.yml与bootstrap.yml的区别

    Spring Boot 中application.yml与bootstrap.yml的区别

    其实yml和properties文件是一样的原理,且一个项目上要么yml或者properties,二选一的存在。这篇文章给大家介绍了Spring Boot 中application.yml与bootstrap.yml的区别,感兴趣的朋友一起看看吧
    2018-04-04
  • Java发送https请求代码实例

    Java发送https请求代码实例

    这篇文章主要介绍了Java发送https请求代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • java遍历读取整个redis数据库实例

    java遍历读取整个redis数据库实例

    这篇文章主要介绍了java遍历读取整个redis数据库实例,使用支持正则表达式的key搜索方法jedis.keys(“*”)实现,需要的朋友可以参考下
    2014-05-05
  • SpringBoot JPA懒加载失效的解决方案(亲测有效)

    SpringBoot JPA懒加载失效的解决方案(亲测有效)

    这篇文章主要介绍了SpringBoot JPA懒加载失效的解决方案(亲测有效),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08

最新评论