1
我是Groovy的新手。我執行下面的Groovy代碼:Groovy中的關閉
myList=[234, 34, "Stackoverflow", 3.14]
myList=myList.collect {if (it instanceof Integer) it*it}
println myList
它輸出:
[54756, 1156, null, null]
在我看來,它不應該改變的字符串值。當我改變第二行:
myList=myList.collect {if (it instanceof Integer) it*it else it=it}
它的工作原理如我所料:
[54756, 1156, Stackoverflow, 3.14]
我想知道什麼是背後的邏輯!