規則。地圖
Map類型,用於簡單的鍵值映射。
鍵的類型必須是rules.String
。
除了下面列出的方法之外,地圖還有以下運算子:
操作員 | 用法 |
---|---|
x == y | 比較地圖 x 和 y |
x[k] | 索引運算符,取得鍵名 k 處的值 |
xk | 取得鍵名 k 處的值 |
k in x | 檢查鍵 k 是否存在於映射 x 中 |
方法
差異
diff(map_to_compare) 傳回規則.MapDiff
傳回一個rules.MapDiff,表示當前Map與比較Map的比較結果。
範圍 | |
---|---|
映射比較 | 將與目前(呼叫)Map 進行比較的 Map。 值不能為空。 |
- 退貨
表示比較結果的
non-null rules.MapDiff
物件。
得到
get(key, default_value) 傳回值
傳回與給定搜尋關鍵字字串關聯的值。
對於涉及鍵和子鍵的巢狀映射,傳回與給定子鍵字串關聯的值。子鍵使用清單來標識,其中第一項是頂級鍵,最後一項是要尋找並傳回其值的子鍵。請參閱下面的巢狀 Map 範例。
如果未找到與給定搜尋鍵的匹配項,則函數需要傳回預設值。
範圍 | |
---|---|
鑰匙 | (非空rules.String或非空rules.List ) 指定為字串的鍵,或對於巢狀映射,使用列表語法指定的子鍵。 |
預設值 | 預設值 如果地圖不包含給定的搜尋鍵,則傳回值。可以是任何規則語言類型。 |
- 退貨
value
與給定key
對應的值,或者如果未找到與給定 key 的匹配項,則由default_value
指定的預設回傳值。由於Map內容是使用者自訂的,因此傳回value
的資料類型可以是任何Rules語言類型。
例子
// "c" is not a key in the supplied Map, returns default value 7.
{"a": 3,"b": 2}.get("c", 7) == 7
// Default result can be any type, e.g. a list such as [1, 1].
{"a": [2, 7], "b": [9, 12]}.get("c", [1, 1]) == [1, 1]
// Return a list on a successful match.
{"a": [2, 7],"b": [9, 12]}.get("b", [1, 1]) == [9, 12]
// For nested Maps, use list ["a", "b"] to specify lookup on sub-key "b".
{"a": {"b": 1},"c": 2}.get(["a", "b"], 7) == 1
鍵
keys() 回傳rules.List
取得地圖中的按鍵列表。
- 退貨
non-null rules.List
列出鍵列表。
尺寸
size() 傳回規則.Integer
取得地圖中的條目數。
- 退貨
non-null rules.Integer
整數條目數。
價值觀
value() 回傳rules.List
取得地圖中的值清單。
- 退貨
non-null rules.List
列出值清單。