unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); end; var Form1: TForm1; implementation {$R *.dfm} uses Generics.Collections; procedure TForm1.Button1Click(Sender: TObject); var Dictionary: TDictionary<string,Integer>; K: string; V: Integer; str: string; begin Dictionary := TDictionary<string,Integer>.Create(); {添加} Dictionary.Add('n1', 111); Dictionary.Add('n2', 222); Dictionary.Add('n3', 333); {访问} ShowMessage(IntToStr(Dictionary['n2'])); {222} ShowMessage(IntToStr(Dictionary.Items['n2'])); {222} {遍历 Keys} str := ''; for K in Dictionary.Keys do str := str + K + ' '; ShowMessage(str); {n2 n3 n1 } //顺序乱了? {遍历 Values} str := ''; for V in Dictionary.Values do str := str + IntToStr(V) + ' '; ShowMessage(str); {222 333 111 } {通过 Keys 遍历 Values} str := ''; for K in Dictionary.Keys do str := str + IntToStr(Dictionary[K]) + ' '; ShowMessage(str); {222 333 111 } {删除} Dictionary.Remove('n1'); str := ''; for K in Dictionary.Keys do str := str + IntToStr(Dictionary[K]) + ' '; ShowMessage(str); {222 333 } {Count、Clear} ShowMessage(IntToStr(Dictionary.Count)); {2} Dictionary.Clear; ShowMessage(IntToStr(Dictionary.Count)); {0} Dictionary.Free; end; end.