2

我对 Gosu 的了解不是太深,所以这段代码让我很困惑。我用谷歌搜索过,等等,但无济于事。这个片段中的反斜杠在做什么?

GET_STUFF.execute(\ -> {
      var gig = withPackagedGig(request.id, request.signature, \ k -> {
        k.addItem("Log_RetrievedGig");
        return k;
      });
      myObj = toObj(gig);
    })
4

2 回答 2

6

反斜杠只是block语法的一部分。

\ -> {相当于 Java 的() -> {- 一个不带参数的 lambda。

\ k -> {等效于 Java 的k -> {- 一个 lambda,它采用一个类型被推断的参数。

于 2019-02-26T15:42:32.093 回答
3

这个问题最初是在认为代码是 Java 时发布的。发现是 Gosu 后,文档给出了答案。

Gosu 中的 Lambda 由反斜杠引起。

于 2019-02-26T15:42:41.583 回答