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 List: TList<Byte>; b: Byte; str: string; begin List := TList<Byte>.Create(); List.Add(11); List.Add(22); List.Add(33); str := ''; for b in List do str := str + IntToStr(b) + ' '; {11 22 33 } ShowMessage(str); List.Reverse; str := ''; for b in List do str := str + IntToStr(b) + ' '; {33 22 11 } ShowMessage(str); ShowMessage(IntToStr(List.Capacity)); {4} List.TrimExcess; ShowMessage(IntToStr(List.Capacity)); {3} List.Free; end; end.