我認爲這是一個新手問題,但爲什麼它在最後的斷言失敗? 我在想這個閉包綁定了它的值,所以從閉包中改變它會改變閉包之外的值。Groovy - 閉包和綁定,爲什麼這段代碼不起作用?
def value = 5
def foo(n){
return {
++n
}
}
def test = foo(value)
assert test() == 6
assert test() == 7
assert value == 7
感謝您的幫助。