程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 詳測 Generics Collections TDictionary(2): ContainsKey、ContainsValue、AddOrSetValue、TryGetValue

詳測 Generics Collections TDictionary(2): ContainsKey、ContainsValue、AddOrSetValue、TryGetValue

編輯:Delphi

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>; 
 b: Boolean; 
 T: Integer; 
begin 
 Dictionary := TDictionary<string,Integer>.Create(); 
 
 {添加} 
 Dictionary.Add('n1', 111); 
 Dictionary.Add('n2', 222); 
 Dictionary.Add('n3', 333); 
 
 {判斷指定的 Key 是否存在} 
 b := Dictionary.ContainsKey('n1'); 
 ShowMessage(BoolToStr(b, True));  {True} 
 b := Dictionary.ContainsKey('n4'); 
 ShowMessage(BoolToStr(b, True));  {False} 
 
 {判斷指定的 Value 是否存在} 
 b := Dictionary.ContainsValue(111); 
 ShowMessage(BoolToStr(b, True));  {True} 
 b := Dictionary.ContainsValue(999); 
 ShowMessage(BoolToStr(b, True));  {False} 
 
 {使用 AddOrSetValue 時, 如果 Key 存在則替換值; 此時如果用 Add 將發生異常} 
 Dictionary.AddOrSetValue('n1', 123); 
 ShowMessage(IntToStr(Dictionary['n1'])); {123} 
 
 {使用 AddOrSetValue 時, 如果 Key 不存在則同 Add} 
 Dictionary.AddOrSetValue('n4', 444); 
 ShowMessage(IntToStr(Dictionary['n4'])); {444} 
 
 {嘗試取值} 
 if Dictionary.TryGetValue('n2', T) then 
  ShowMessage(IntToStr(T)); {222} 
  
 Dictionary.Free; 
end; 
 
end. 


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved