Show how to iterate over the key-value pairs of an associative array, and print each pair out.

Also show how to iterate just over the keys, or the values, if there is a separate way to do that in your language.



See also

 Array
 Associative array: Creation, Iteration
 Collections
 Compound data type
 Doubly-linked list: Definition, Element definition, Element insertion, List Traversal, Element Removal
 Linked list
 Queue: Definition, Usage
 Set
 Singly-linked list: Element definition, Element insertion, List Traversal, Element Removal
 Stack


 
(lib 'hash) ;; load hash.lib
(define H (make-hash))
;; fill hash table
(hash-set H 'Simon 42)
(hash-set H 'Albert 666)
(hash-set H 'Antoinette 33)
 
;; iterate over (key . value ) pairs
(for ([kv H]) (writeln kv))
(Simon . 42)    
(Albert . 666)    
(Antoinette . 33)    
 
;; iterate over keys
(for ([k (hash-keys H)]) (writeln 'key-> k))
key->     Simon    
key->     Albert    
key->     Antoinette    
 
;; iterate over values
(for ([v (hash-values H)]) (writeln 'value-> v))
value->     42    
value->     666    
value->     33    
 