2

我试图OrderedCollection通过它的键对一个进行排序,但这个方法只返回键。我想同时获取键和值,但根据键进行排序。

aAssociation:= Association new.
aAssociation key:6 value:7.
aOrderedCollection:= OrderedCollection new.
aOrderedCollection addFirst: aAssociation.
aAssociation1:= Association new.
aAssociation1 key:5 value:9.
aOrderedCollection addLast: aAssociation1.
aAssociation2:= Association new.
aAssociation2 key:8 value:4.
aOrderedCollection addLast: aAssociation2.
aSortedCollection:= (aOrderedCollection sort: #key ascending) collect:#key. 
4

1 回答 1

4

你在最后调用#collect:,这是你提取密钥的地方。不要那样做,你就完了。

也不要调用#sort:,它会修改你发送到的集合。使用#sorted:,它将返回一个排序的副本。它也适用于各种收藏。

于 2018-02-18T07:13:14.787 回答