gpt4 book ai didi

grails - Groovy中此方法的返回类型是什么?

转载 作者:行者123 更新时间:2023-12-03 14:32:28 24 4
gpt4 key购买 nike

我有这样的方法:

def getInformation ()  {

return [true, "reason why"]
}

我正在这样使用
def (isClear, reason) = getInformation()

有没有办法为该方法定义返回类型,以便在有人通过该方法时更好地阅读?

最佳答案

该方法的真正返回类型是Object,因为您使用'def'声明了它。这意味着它可以返回任何内容,而与实际返回的对象无关。

以下代码将同样有效:

def getInformation ()  {    
return "this is some information"
}

要么
def getInformation ()  {    
return 42
}

但是该方法的returntype并没有改变。

真正的问题是:您为什么选择这种方法?我认为以下内容将使事情变得更加清晰:
Result getInformation() {
return new Result(success: true, reason: "why")
}

这将使调用者更清楚地知道,唯一需要创建的就是一个简单的类:
class Result {
boolean success
String reason
}

现在,您已经有了一个明确定义的API。由于您在此处面临的问题,我永远不会在方法签名中使用def。

关于grails - Groovy中此方法的返回类型是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16342171/

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