泛型我是了解一些,但具体在那些场合用,能给具体的例子吗?谢谢!
解决方案 »
- 【新手问题,求帮助】关于DataSet操作
- 如何使用APDU命令操作IC卡
- 求教文件读写和对文件数据的处理问题?为什么用记事本打开*.doc会是乱码?乱码与字符是什么关系?如何转换?
- fckeditor ,greybox 确在服务器的iframe中的内容无法显示了
- 在线等,timer 事件的问题
- 关于泛类型方法的调用问题
- 请推荐机器配置
- 怎样在c#中实现获取另一个应用程序的内容,比如:用个c#的程序去读取一个已经打开的程序界面中textbox里的内容!
- 如何在WINFORM中的TEXTBOX上加上TIPS,就像WEBFORM中的TOOLTIPS一样,在线等,很急啊,非常感谢!
- 急,一个正则表达式的问题
- 当前线程处于堆栈溢出状态,因此无法计算表达式的值。谁遇到过这种错误啊?
- 如何应用矩阵控件做rdlc报表?
闲话少说,让我们言归正传。 二、 使用泛型集合 有些人问我"面向对象编程(OOP)的承诺在哪里?",我的回答是应该从两个方面来看OOP:你所使用的OOP和你创建的OOP。如果我们简单地看一下如果没有如例如Microsoft的.NET,Borland的VCL,以及所有的第三方组件这样的OO框架,那么很多高级的应用程序几乎就无法创建。所以,我们可以说OOP已经实现了它的承诺。不错,生产好的OOP代码是困难的并且可能是极具挫败性的;但是记住,你不必须一定要通过OOP来实现你的目标。因此,下面首先让我们看一下泛型的使用。 当你用Visual Studio或C# Express等快速开发工具创建工程时,你会看到对于System.Collections.Generic命名空间的参考引用。在这个命名空间中,存在若干泛型数据结构-它们都支持类型化的集合,散列,队列,栈,字典以及链表等。为了使用这些强有力的数据结构,你所要做的仅是提供数据类型。 列表1显示出我们定义一个强类型集合的Customer对象是很容易的。 列表1 这个控制台应用程序包含一个Customer类和一个基于List<T>的强类型集合Customers。using System;
using System.Collections.Generic;
using System.Text;
namespace Generics{
class Program{
static void Main(string[] args){
List<Customer> customers = new List<Customer>();
customers.Add(new Customer("Motown-Jobs"));
customers.Add(new Customer("Fatman's"));
foreach (Customer c in customers)
Console.WriteLine(c.CustomerName);
Console.ReadLine();
}
}
public class Customer{
private string customerName = "";
public string CustomerName{
get { return customerName; }
set { customerName = value; }
}
public Customer(string customerName){
this.customerName = customerName;
}
}
} 注意,我们有一个强类型集合-List<Customer>-对这个集合类本身来说不需要写一句代码。如果我们想要扩展列表customer,我们可以通过从List<Customer>继承而派生一个新类。