groovy-GStringImpl 和 String 差异导致的问题
org.codehaus.groovy.runtime.GStringImpl 是 Groovy 中用于表示 Groovy 字符串(即包含变量的字符串)的内部类型
fruits = ["apple"]
fruits_map = ["apple"]
a = "apple"
b = "${a}"
println("fruits: ${fruits}")
println("fruits_map: ${fruits_map}")
println("a: ${a}")
println("b: ${b}")
println("a == b : ${a == b}")
println("a in fruits: ${a in fruits}")
println("b in fruits: ${b in fruits}")
println("a in fruits_map: ${a in fruits_map}")
println("b in fruits_map: ${b in fruits_map}")
fruits: [apple]
fruits_map: [apple]
a: apple
b: apple
a == b : true
a in fruits: true
b in fruits: false
a in fruits_map: true
b in fruits_map: false