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.