gpt4 book ai didi

groovy - 如何在 Groovy 中跳过具有默认值的参数?

转载 作者:行者123 更新时间:2023-12-02 01:00:10 26 4
gpt4 key购买 nike

我的 Groovy 方法有 3 个参数,最后 2 个有默认值。我想跳过第二个参数,只提供第一个和第三个参数的值,就像这样..

 def askForADate(girlsName, msg = 'Will you go out with me?', beg = 'pretty please!!') {
println "$girlsName, $msg $beg!"
}

askForADate('Jennifer',,'Because I love you!')

现在这打印出来......
 Jennifer, Because I love you! pretty please!!!

所以看起来它正在将我为第三个参数传入的值插入到第二个参数中。

如何解决?

最佳答案

正如 doelleri 所说,您需要编写两个版本的 thie 方法。
除非你会使用一些带有命名参数的很棒的东西!

def askForADate(Map op, girlsName) {
println "$girlsName, ${op.get('msg', 'Will you go out with me?')} ${op.get('beg', 'pretty please!!')}!"
}

askForADate(beg: 'Because I love you!', 'Jennifer')

打印出来:珍妮弗,你会和我一起出去吗?因为我爱你!!

http://mrhaki.blogspot.com/2015/09/groovy-goodness-turn-method-parameters.html更多细节

这个解决方案的明显缺点是重新排序参数,因为现在女孩的名字排在最后。

关于groovy - 如何在 Groovy 中跳过具有默认值的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51197022/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com