J'ai besoin d'une collection clé/valeur delphi qui me permettra d'itérer sur la collection dans le même ordre que les paires clé/valeur ont été insérées/ajoutées.Collection clé/valeur qui maintient la commande
TList<T>
garantit la commande mais pas TDictionary<T1, T2>
.
Je suppose que je pourrais toujours définir un TList<TPair<Key, Value>>
mais il serait plus encombrant de travailler avec.
Existe-t-il un type de collection intégré qui répondrait à mes exigences ou l'emballage TList<TPair<Key, Value>>
serait-il ma meilleure option? Ou peut-être qu'il serait préférable d'avoir un TList<Key>
et un TDictionary<Key, Value>
et parcourir la liste.
Il n'y a pas de dictionnaire ordonné intégré. Je m'attends à ce qu'il y ait des implémentations de tiers, mais personnellement, je n'en connais pas. –
A 'TList>' trié sur Key n'est pas trop mauvais, car une opération de recherche de clé pourrait utiliser une recherche binaire, mais une structure de données basée sur l'arbre est probablement ce dont vous avez besoin. Notez que 'TList >' n'appliquera pas l'unicité, ce que vous pourriez vouloir implémenter si vous voulez appliquer des clés uniques. –