如何在Racket中定义哈希表的哈希表?

时间:2013-11-20 10:36:56

标签: functional-programming hashtable racket

我想定义一个哈希表来表示这样的数据结构:

((“A”,(“B”,16)),(“B”,(“C”,20)))

我需要访问两对:(“B”,16),(“C”,20)和数字16,20。

我可以在Racket中使用散列表哈希表吗?我该如何定义它并访问元素?

1 个答案:

答案 0 :(得分:2)

我找到了答案。对的,这是可能的。人们可以简单地这样做:

(define (fun1) 

 (let ([ht (make-hash (list (cons "A" (make-hash '(("B" "16")("C" "20"))))))])

    ht))

(define v (hash-ref (fun1) "A" ))

(hash-ref v "B")