在 Pharo Smalltalk 中存储多个值的键的好方法?

A good way to store key to multiple values in Pharo Smalltalk?

我有一个键值存储(字典),由以下部分组成:

key1 value1
key2 value1
key3 value3
key1 value4
key3 value4
and so on

我想对这些进行分组,以便键只出现一次(键的排序是可选的)和值:

key1 value1, value4
key2 value1
key3 value3, value4

问题:是否有专门的方法来存储结果?

设法修复它。使用键值存储(字典),其中键是 key1、key2、key3,值是 value1、value2、value3 等的集合(或数组)

大致如下:

keys do: [ :eachKey | (eachKey condition) ifTrue: [
    keyValueStorage at: eachKey ifAbsentPut: [ Set new. ]
    ( keyValueStorage at: eachKey ) add: value. ] ] .