函数式编程-Consumer 在实际环境的使用

复制代码
package com.example.springstudy.test.consumer;

import com.example.springstudy.entity.UserInfo;

import java.util.function.Consumer;

/**
 * @Author: GuoDong
 * @Description:
 * @Date 2023-02-06 17:47:46
 * @Version 1.0
 **/
public class ConsumerTest {


    /**
     * 提供参数方
     * @param consumer
     * @param userInfo
     */
    public void invoke(Consumer<UserInfo> consumer, UserInfo userInfo){
        consumer.accept(userInfo);
    }

    public static void main(String[] args) {
        UserInfo userInfo = new UserInfo();
        userInfo.setPassWord("1231");
        userInfo.setPhone("3345345");

        // 调用方式, bean.方法名()
        AAB a = new AAB();
        Consumer<UserInfo> userInfoConsumer = a::handler;

        ConsumerTest consumerTest = new ConsumerTest();
        consumerTest.invoke(userInfoConsumer, userInfo);
    }

}

class AAB{

    /**
     * 处理方,需要接收一个UserInfo类型的入参, 在这里处理逻辑
     * @param userInfo
     */
    public void handler(UserInfo userInfo){
        // 针对传过来的入参,处理业务逻辑
        userInfo.setPhone("4353535");
        System.out.println(userInfo);
    }

}
复制代码

总结:Consumer与Supplier相反,Consumer是消费入参,而Supplier是提供一个参数。多总结,多思考

 

posted @   郭慕荣  阅读(36)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
点击右上角即可分享
微信分享提示