有時在其他語言中稱為字典或關聯數組,Groovy具有 Map 功能。
Map 將鍵與值相關聯, 用冒號分隔鍵和值,使用逗號分隔每個鍵/值對,以及用方括號括起的整個鍵和值 。
當使用鍵的名稱時,我們實際上在Map中定義了字符串鍵。Groovy創建的 map 實際上是 java.util.LinkedHashMap 的實例。
如果 map 中不存在對應的鍵,則返回 null 。例如:
在上面的例子中,我們用了字符串類型的鍵,妳也可以使用其他類型的值作為鍵:
在這裏,我們使用數字作為鍵,因為數字可以明確地被識別為數字,因此Groovy不會像我們之前的例子那樣創建字符串鍵。有種場景,妳如果要傳遞壹個變量代替鍵,讓該變量的值成為鍵:
您還可以傳遞帶引號的字符串以及鍵: ["name": "Guillaume"] 。您的字符串鍵必需是有效的標識符,例如您想創建壹個包含哈希的字符串鍵,如: ["street-name": "Main street"] 。
當您需要 在 map 定義中將變量值作為鍵傳遞時,必須用括號括起變量或表達式 :