c# 判断 泛型t 类型_浅谈C#泛型

本文介绍了C#中的泛型概念,包括泛型类、泛型方法、泛型集合(如List和Dictionary)以及泛型委托(Func、Action和Predicate)。通过实例展示了泛型如何提高代码的类型安全性和重用性,以及在数据操作和条件判断中的应用。
摘要由CSDN通过智能技术生成

一.为什么要提出泛型的概念

我们在声明对象或者方法中,对象中成员变量的定义或者函数参数都传递都要指定具体的对象类型,但是有的时候参数的类型是变化的,但是实现的功能却又差不多,这个时候我们就想,是否存在一种东西可以将参数的位置“占住”,当传递具体的对象类型是再用这个类型取替换被占住的位置,这个时候就提出了泛型的概念,是不是有点绕,但是看完下面的例子就清除这里表达的内容了,泛型有多种表现形式,泛型类,泛型方法,泛型集合,泛型委托,可以说不懂泛型就没有真正的了解C#,下面让我们来开始泛型的学习吧。

二.泛型类,泛型方法

我们先举个例子,我们定义一个类来模拟入栈出栈操作,我们操作出栈入栈时要针对各种数据类型,int型,double 型,字符型......总之各种类型都有可能,我们不可能针对每个类型都写一个类来操作出栈入栈,这显然是不现实的,这个是时候就该泛型大显身手发时候了,看下面的定义:

c9e6eafb76f2a49acc4ca00d9becdea2.png

我们在 public class MyStack 后面加了一个这个时候这个类就变成了一个泛型类,表示一个占位符,当我们实例化该类的时候需要传入具体的数据类型,我们来看一下泛型类的具体用法:

    public int[] arrayInt = new int[6];public string[] arrayStr = new string[6];
MyStack<int> objMyIntStack = new MyStack<int>(6);
MyStack<string> objMyStrStack = new MyStack<string>(6);

这样泛型类就可以操作int 类型 和 string类型进行出栈入栈操作但代码却不需要改动。

三.泛型集合

 使用泛型集合首先是是加了类型安全,方便编程,泛型集合指定了类型后只能将同类型的参数放入集合,泛型集合最常用就是List集合和Dictionary集

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值