首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Java

Java Function 相关

  •  
  •   ShinKu · 99 天前 · 677 次点击
    这是一个创建于 99 天前的主题,其中的信息可能已经有所发展或是发生改变。
    主方法:returnValue = method(streams, this::funtion1, this::funtion2, this::funtion3);

    method 实现:
    method (Stream streams, Function<Stream<?>, Stream<?>>... functions) {
    return Arrays.stream(functions).reduce(Function::andThen).get().apply(streams);
    }

    目前想在 function3 内多加一个 int 参数,问下该如何实现
    Function<Stream<?>, Integer, Stream<?>> 是这样写吗
    虽然直接把 function3 独立出来也可以,但总觉得破坏了大佬代码。。。
    来这里咨询一下
    4 回复  |  直到 2019-07-25 12:48:56 +08:00
        1
    secondwtq   99 天前 via iPad
    不熟悉 Java,不过你这个参数可以加在重载函数上
        2
    zzl22100048   99 天前   ♥ 1
    funtion 代表函数,一个输入一个输出,bifuntion 两个输入一个输出
        3
    qwerthhusn   99 天前
    一顿操作猛如虎,其实逻辑很简单,如果一串流挨排经过 function1 function2 function3。我怀疑你口中的大佬只是在炫技罢了。
    具体逻辑不清楚也不知道该怎么改,不过能告诉你的就是那个一行代码的方法的逻辑就是上面说的那样
        4
    wsxyeah   89 天前 via iPhone
    柯里化?
    给 function3 绑定值返回一个新函数,或者你直接写一下重载函数调用 function3 也是一样的。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4017 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 01:19 · PVG 09:19 · LAX 18:19 · JFK 21:19
    ♥ Do have faith in what you're doing.