繁体   English   中英

Java中的finagle-Function,Function1等

[英]finagle in java - Function, Function1 etc

如何在Java中创建finagle的Future对象的flatMap方法中使用的Function1对象?

试过这个:

Function1<String, String> f = new Function1<String, String>() {
    @Override
    public String apply(String s) {
        return null;
    }
};

但这不起作用:

错误:(22、73)java:不是抽象的,并且没有覆盖scala.Function1中的抽象方法andThen $ mcVJ $ sp(scala.Function1)

为了完整起见,这是我上面两个月大的评论的答案。

首先是一些进口:

import scala.Function1;
import scala.runtime.AbstractFunction1;

现在,您只需要定义apply方法:

Function1<String, String> f = new AbstractFunction1<String, String>() {
  public String apply(String s) {
    return s;
  }
};

但是,如果您使用的是Finagle,则Twitter的Util库还提供了类似的帮助程序类:

import com.twitter.util.Function;
import scala.Function1;

接着:

Function1<String, String> f = new Function<String, String>() {
  public String apply(String s) {
    return s;
  }
};

后一个选项可能更好-我从未真正喜欢过显式地使用scala.runtime

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM