Xtend语法澄清

时间:2017-11-15 09:44:46

标签: java syntax xtend

我试图100%理解以下Xtend语法意味着:

        myVar.addSelectionListener(
           [MultiSelectionEvent<String> event |
               println(event.toString)
           ]
        )
  • myVar是 com.vaadin.ui.CheckBoxGroup
  • addSelectionListener假设接收一个 com.vaadin.event.selection.MultiSelectionListener interface

实现 MultiSelectionListenener 时,必须实现 selectionChange 方法,该方法本身将 MultSelectionEvent 对象作为参数。

我理解在上面的代码中,我在代码中提供内联实现。但任何人都可以提供有关语法的更多细节吗?

例如,我们何时在Xtend中使用 [] |

1 个答案:

答案 0 :(得分:2)

这是Xtend的lambda语法。所以在Java中你会写:

    myVar.addSelectionListener(
       (MultiSelectionEvent<String> event) -> {
           println(event.toString)
       }
    );

Xtend只需将(params)=>{code}替换为[<params>|<code>]