XE2 泛型练习1
要引用单元 System.Generics.Collections
implementation
{$R *.dfm}
var
i: Integer;
str: string;
procedure TForm1.btn2Click(Sender: TObject);
var
List: TList<Integer>;
begin
List := TList<Integer>.Create();
List.AddRange([11, 22, 33]);
str := '';
for i in List do
str := str + IntToStr(i) + ' ';
ShowMessage(str); { 11 22 33 }
List.Free;
end;
procedure TForm1.btn3Click(Sender: TObject);
var
List: TList<string>;
item:string;
begin
List := TList<string>.Create();
List.AddRange(['123', '546', '字符串']);
str := '';
for item in List do
str := str + item + ' ';
ShowMessage(str); { 11 22 33 }
List.Free;
end;
万一博客园 泛型 网址 http://www.cnblogs.com/del/category/213198.html
//可在建立时同时指定排序器
procedure TForm1.Button3Click(Sender: TObject);
var
List: TList<Integer>;
Comparer: IComparer<Integer>;
begin
{建立排序器}
Comparer := TComparer<Integer>.Construct(
function(const n1,n2: Integer): Integer
begin
Result := n2 - n1;
end
); List := TList<Integer>.Create(Comparer);
List.AddRange([, , ]); List.Sort; {会根据建立时指定的排序器排序} str := '';
for i in List do str := str + IntToStr(i) + ' ';
ShowMessage(str); {3 2 1 } List.Free;
end;
XE2 泛型练习1的更多相关文章
- 一起学 Java(三) 集合框架、数据结构、泛型
一.Java 集合框架 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个 ...
- .NET面试题系列[8] - 泛型
“可变性是以一种类型安全的方式,将一个对象作为另一个对象来使用.“ - Jon Skeet .NET面试题系列目录 .NET面试题系列[1] - .NET框架基础知识(1) .NET面试题系列[2] ...
- C#4.0泛型的协变,逆变深入剖析
C#4.0中有一个新特性:协变与逆变.可能很多人在开发过程中不常用到,但是深入的了解他们,肯定是有好处的. 协变和逆变体现在泛型的接口和委托上面,也就是对泛型参数的声明,可以声明为协变,或者逆变.什么 ...
- 编写高质量代码:改善Java程序的151个建议(第7章:泛型和反射___建议106~109)
建议106:动态代理可以使代理模式更加灵活 Java的反射框架提供了动态代理(Dynamic Proxy)机制,允许在运行期对目标类生成代理,避免重复开发.我们知道一个静态代理是通过主题角色(Prox ...
- 6.在MVC中使用泛型仓储模式和依赖注入实现增删查改
原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/crud-operations-using-the-generic-repository-pat ...
- C#泛型详解(转)
初步理解泛型: http://www.cnblogs.com/wilber2013/p/4291435.html 泛型中的类型约束和类型推断 http://www.cnblogs.com/wilber ...
- C# 泛型
C# 泛型 1.定义泛型类 在类定义中包含尖括号语法,即可创建泛型类: class MyGenericClass<T> { //Add code } 其中T可以遵循C#命名规则的任意字符. ...
- java8中lambda表达式的应用,以及一些泛型相关
语法部分就不写了,我们直接抛出一个实际问题,看看java8的这些新特性究竟能给我们带来哪些便利 顺带用到一些泛型编程,一切都是为了简化代码 场景: 一个数据类,用于记录职工信息 public clas ...
- java 泛型
1.Student stu =tool.getObj();右边得到的是Object类型,需要向下转型,强转换. 2. 3. 4.泛型方法不能被静态修饰这样写 5.如果想定义定义静态泛型方法,只能这样写 ...
随机推荐
- python变量
1. 系统变量 (1) '__doc__' 文件注释,在py中代码最上方""" """里面一般写注释,系统会把文件注释自动存放在'__doc ...
- 【原】用css让一个容器水平垂直
这种css布局平时用的比较多,也是面试题常出的一个题,网上一搜一大丢,不过还是想自己总结一下. 这种方法比较多,本文只总结其中的几种,以便加深印象. 效果图都为这个: 方法一:position加mar ...
- Python Day4
一.装饰器 装饰器类似于一种动态增加函数功能的方法,使用@语法,放在它要装饰的函数定义处(函数定义的上面),实现为已经存在的函数增加新的功能. def outer(func): def innter( ...
- js获取当前坐标
<script type="text/javascript"> var position_option = {enableHighAccuracy: false,max ...
- margin和padding的区别
目前web2.0已经越来被人们认可,因为喜欢搞web开发的人员不得不硬着头皮去学习web2.0的标准,其中很重要的一条就是新的布局规则,div+css.以前基本上是用table布局的,这种传统的方式简 ...
- Python学习笔记——字典
1.创建字典和给字典赋值,可以使用工厂方法dict()来创建字典,也可以使用fromkeys()来创建一个元素具有相同值的字典 >>> dict = {'name':'XiaoMin ...
- 忍不住记录下小型的CMDB系统
- todoList使用教程
网页链接:http://www.cnblogs.com/sunada2005/articles/2663030.html
- Npoi导入导出Excel操作
之前公司的一个物流商系统需要实现对订单的批量导入和导出,翻阅了一些资料,最后考虑使用NPOI实现这个需求. 在winform上面实现excel操作:http://www.cnblogs.com/Cal ...
- 生成彩条的MATLAB代码
clc;close all;clear %read image % RGBimga = imread('bmpinput_1080p.bmp'); RGBimga = imread('bmpinput ...