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, Generics.Defaults;
procedure TForm1.Button1Click(Sender: TObject);
var
List: TList < Integer > ;
i: Integer;
str: string ;
begin
List : = TList < Integer > .Create();
List.AddRange([ 22 , 33 , 11 ]);
str : = '' ;
for i in List do str : = str + IntToStr(i) + ' ' ;
ShowMessage(str); { 22 33 11 }
{ 排序 }
List.Sort;
str : = '' ;
for i in List do str : = str + IntToStr(i) + ' ' ;
ShowMessage(str); { 11 22 33 }
{ 倒排序 }
List.Sort(TComparer < Integer > .Construct(
function ( const n1,n2: Integer): Integer
begin
Result : = n2 - n1;
end ));
str : = '' ;
for i in List do str : = str + IntToStr(i) + ' ' ;
ShowMessage(str); { 33 22 11 }
List.Free;
end ;
end .
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, Generics.Defaults;
procedure TForm1.Button1Click(Sender: TObject);
var
List: TList < Integer > ;
i: Integer;
str: string ;
begin
List : = TList < Integer > .Create();
List.AddRange([ 22 , 33 , 11 ]);
str : = '' ;
for i in List do str : = str + IntToStr(i) + ' ' ;
ShowMessage(str); { 22 33 11 }
{ 排序 }
List.Sort;
str : = '' ;
for i in List do str : = str + IntToStr(i) + ' ' ;
ShowMessage(str); { 11 22 33 }
{ 倒排序 }
List.Sort(TComparer < Integer > .Construct(
function ( const n1,n2: Integer): Integer
begin
Result : = n2 - n1;
end ));
str : = '' ;
for i in List do str : = str + IntToStr(i) + ' ' ;
ShowMessage(str); { 33 22 11 }
List.Free;
end ;
end .