C# 泛型(泛型类、泛型方法)

一、泛型是什么?

泛型(Generic),是将不确定的类型预先定义下来的一种C#高级语法,我们在使用一个类,接口或者方法前,不知道用户将来传什么类型,或者我们写的类,接口或方法相同的代码可以服务不同的类型,就可以定义为泛型。这会大大简化我们的代码结构,同时让后期维护变得容易。

泛型很适用于集合,我们常见的泛型集合有:List<T>,Dictionary<K,V>等等(T,K,V就代表不确定的类型,它是一种类型占位符),无一不是利用的泛型这一特性,若没有泛型,我们会多出很多重载方法,以解决类型不同,但是执行逻辑相同的情况

1、泛型长什么样?
namespace 泛型
{
    class Program
    {
        static void Main(string[] args)
        {
            Test<string>();
 
            Console.ReadKey();
        }
 
        static void Test<T>()
        {
            Console.WriteLine(typeof(T).FullName);
        }
    }
}

二、泛型类

1、泛型类是什么?

泛型类是指这个类的某些字段的类型是不确定的,只有在构造的时候才能确定下的类,泛型类一般在数据结构中用的比较多

2、如何定义一个泛型类?
class People<T1,T2>
{
    // people 有俩个属性的类型不确定,可以定义泛类
    public T1 Sex { get; set; } //性别可以用1、0,也可以使用字符串男 、女  ,也可以使用true/false
    public T2 Age { get; set; }
}

三、泛型方法 

1、什么是泛型方法

泛型方法是指通过泛型来约束方法中的参数类型,如果没有泛型,每次方法中的参数类型都是固定的,不能随意更改,在使用泛型后,方法中的数据类型则有指定的泛型来约束,即可以根据提供的泛型来传递不同类型的参数

通俗来讲 泛型方法一个方法的参数可以是任意类型的

2、系统使用泛型方法有
List<int> list = new List<int>();
Dictionary<string, string> d1 = new Dictionary<string, string>();
3、如何定义一个泛型方法
//1 在方法名后面加上<T>
//2 参数是泛型的时候 在参数前面添加T,多个泛型参数使用,隔开,
public static void Add1<T>(T a)
{
    Console.WriteLine("昨天爆爆炸队友:" + a);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值