delphi - 如何从 TDictionary 获取 key ?

标签 delphi tdictionary

我有一个TDictionary<TKeyClass, TValueClass> .

我想完成类似的事情

for i := 0 to MyDictionary.Count -1 do
  ShowMessage(MyDictionary.Keys[i].AStringProperty)

我无法再访问 key ,如果我确切知道它们,我就可以使用它们。

唯一的选择是创建 TDictionary<TValueClass, TKeyValue> ?那么我可以循环遍历这些键吗?

我发现的解决方法是创建一个 TList<TKeyClass>但这是我不喜欢的。

最佳答案

使用枚举器。

for Key in MyDictionary.Keys do
  ShowMessage(Key.AStringProperty);

由于 TDictionary 是一个哈希表,因此您无法像数组或 TList 那样使用整数索引来访问它。但枚举器工作得很好。

关于delphi - 如何从 TDictionary 获取 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3761740/

相关文章:

android - 加载 jbitmap 数据

delphi - 如何将文本文件的交替行分成两个数组?

Delphi TDictionary迭代

delphi - 在Delphi XE5中使用FileGetSymLinkTarget不会返回它指向的网络地址

delphi - 对 Delphi 数据集进行排序

delphi - 无法播放原始音频文件

class - Delphi - 对 TDictionary 中的内存分配感到困惑

delphi字典迭代

performance - TDictionary<TObject, TObject> 的默认 IEqualityComparer?

delphi - 有没有一种简单的方法将 TDictionary 内容复制到另一个中?