加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Groovy Closure与可选参数

发布时间:2020-12-14 16:36:44 所属栏目:大数据 来源:网络整理
导读:我想定义一个关闭,它接受一个参数(我引用它) 有时我想通过另一个额外的论据来关闭。 我该怎么办? 解决方法 您可以将第二个参数设置为默认值(如null): def cl = { a,b=null - if( b != null ) { print "Passed $b then " } println "Called with $a"}cl( '
我想定义一个关闭,它接受一个参数(我引用它)
有时我想通过另一个额外的论据来关闭。
我该怎么办?

解决方法

您可以将第二个参数设置为默认值(如null):

def cl = { a,b=null ->
  if( b != null ) {
    print "Passed $b then "
  }
  println "Called with $a"
}

cl( 'Tim' )          // prints 'Called with Tim'
cl( 'Tim','Yates' ) // prints 'Passed Yates then Called with Tim

另一个选择是使b a vararg列表像这样:

def cl = { a,...b ->
  if( b ) {
    print "Passed $b then "
  }
  println "Called with $a"
}

cl( 'Tim' )                    // prints 'Called with Tim'
cl( 'Tim','Yates' )           // prints 'Passed [Yates] then Called with Tim
cl( 'Tim','Yates','Groovy' ) // prints 'Passed [Yates,Groovy] then Called with Tim

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读