def m = [a:"A", b:"B"] println m而 Map 物件 m 會呈現(display):
[a:A, b:B]因為預設情形下是使用 toString() method。 然而有一種情形,要試著將這樣子的 String 內容轉回 Map 物件,那勢必得先讓這個 String 呈現為:
[a:"A", b:"B"]或
["a":"A", "b":"B"]這時 inspect() method 就派上用場了:
println m.inspect()它會呈現:
["a":"A", "b":"B"]只要使用 Eval.me(),就可以再創造出 Map 物件了。再如下例:
Eval.me(MyEnum.ordinals().collect{"${it}:'${MyEnum.salvage(it)}'"}.inspect())
不過,這裡 Map 中 key 及 value 的型別是 String (未用引號或使用單引號) 而不是 GString。
沒有留言:
張貼留言