zoukankan      html  css  js  c++  java
  • 二十六、详测 Generics Collections TDictionary(2): ContainsKey、ContainsValue、AddOrSetValue、TryGetValue

    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.
  • 相关阅读:
    LeetCode——Path Sum II
    注解配置 ssh
    冒泡排序深入具体解释
    在web page中使鼠标右击失效的几种方法
    XMPP个人信息展示
    android一个弹出菜单的动画(二)
    MySQL协议分析
    MySQL DBA教程:Mysql性能优化之缓存参数优化
    INSERT DELAYED 句法
    UDP包的最大大小是多少?
  • 原文地址:https://www.cnblogs.com/jxgxy/p/1600934.html
Copyright © 2011-2022 走看看