gpt4 book ai didi

groovy - Groovy:if-then语句是否具有局部作用域?

转载 作者:行者123 更新时间:2023-12-04 23:27:15 29 4
gpt4 key购买 nike

不知道我是否正确询问,但是我有类似以下内容:

def x = 1    
if (x == 1) {
def answer = "yes"
}
println answer

我收到错误-没有这样的属性:类的答案...

但是,这可行:
def x = 1
def answer = ''
if (x==1) {
answer = "yes"
}
println answer

这是因为变量在If语句内部时具有局部作用域吗?有没有更好的方法编写此代码,还是我只需要首先在If语句之外声明所有变量?

最佳答案

是的,您必须在外部范围中声明变量。

Principle #1: "A variable is only visible in the block it is defined in 
and in nested blocks".

有关范围的更多信息:
http://groovy.codehaus.org/Scoping+and+the+Semantics+of+%22def%22

关于groovy - Groovy:if-then语句是否具有局部作用域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10933256/

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