我推荐你这个简短的代码:
('a 1)
;==> nil
('a 1 2)
;=>2
为什么符号a
可以在此上下文中用作函数?
答案 0 :(得分:1)
它允许您以一种很好的语法查找带有符号作为键的地图。
以下是等效的:
('a my-hash-map)
(get my-hash-map 'a) ; returns value associated with 'a or nil if not present
为了更方便,您还可以提供默认值作为可选的第二个参数:
('a my-hash-map 42) ; returns 42 if my-hash-map does't have the key 'a
至于你的例子,('a 1)返回 nil ,因为(get 1'a)返回 nil ,和('a 1 2)返回提供的默认值,2。