详测 Generics Collections TQueue (2): Create、Count、Clear、TrimExcess


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;



//从 TList<T> 建立 TQueue<T>

procedure TForm1.Button1Click(Sender: TObject);

var

  Queue: TQueue<string>;

  List: TList<string>;

  s,str: string;

begin

  List := TList<string>.Create();

  List.AddRange(['AA', 'BB', 'CC']);



  Queue := TQueue<string>.Create(List);



  str := '';

  for s in Queue do str := str + s + ' ';

  ShowMessage(str); {AA BB CC }



  ShowMessage(IntToStr(Queue.Count)); {3}

  Queue.Clear;

  ShowMessage(IntToStr(Queue.Count)); {0}



  //Queue.TrimExcess; { TrimExcess 方法在 Queue 好像没有存在的意义}



  List.Free;

  Queue.Free;

end;



end.


 
   

你可能感兴趣的:(Collections)