簡體   English   中英

如何根據Smalltalk中的Ordered Collection中的鍵進行排序

[英]How to sort according to key in an Ordered Collection in Smalltalk

我試圖通過其鍵對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. 

你正在調用#collect:最后,這是你提取密鑰的地方。 不要這樣做,你就完成了。

也不要調用#sort :,它會修改你發送給它的集合。 使用#sorted :,它將返回一個已排序的副本。 它也適用於各種收藏品。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM