一尘不染

从Java 8中的Method返回Lambda吗?

java

我刚刚开始使用Java 8,并且想知道是否有一种方法可以编写返回a的方法Function

现在我有如下方法:

Function<Integer, String> getMyFunction() {
  return new Function<Integer, String>() {
    @Override public String apply(Integer integer) {
      return "Hello, world!"
    }
  } 
}

有没有一种方法可以更简洁地用Java 8编写代码?我希望这可以工作,但不能:

Function<Integer, String> getMyFunction() {
  return (it) -> { return "Hello, world: " + it } 
}

阅读 268

收藏
2020-12-03

共1个答案

一尘不染

摆脱函数定义内的return语句:

Function<Integer, String> getMyFunction() {
    return (it) -> "Hello, world: " + it;
}
2020-12-03