C#中什么是泛型

C#中什么是泛型参考视频c#教程泛型集合与非泛型集合最大的区别在于,泛型集合,不需要进行装箱和拆箱的操作。如集合元素为值类型,通常泛型集合要优于非泛型集合,并优于从非泛型集合派生出来的类型,泛是广泛的意思,而型是数据类型。这里的泛型可以理解为应用广泛的数据类型。为了提高性能及维护类型安全,一般最好采用泛型集合。如果两个类的内容完全一样,只是处理的数据类型不同。那么,采用泛型是一个不错的选择。泛型类用于封装不是特定于具体数据类型的操作,通常用于集合。诸如从集合中添加和移除项这样的操作都以大体上相同的方式执行,与所存

大家好,又见面了,我是你们的朋友全栈君。

参考视频 c#教程
泛型集合与非泛型集合最大的区别在于,泛型集合,不需要进行装箱和拆箱的操作。如集合元素为值类型,通常泛型集合要优于非泛型集合,并优于从非泛型集合派生出来的类型,
泛是广泛的意思,而型是数据类型。这里的泛型可以理解为应用广泛的数据类型。为了提高性能及维护类型安全,一般最好采用泛型集合。

如果两个类的内容完全一样,只是处理的数据类型不同。那么,采用泛型是一个不错的选择。
泛型类用于封装不是特定于具体数据类型的操作,通常用于集合。诸如从集合中添加和移除项这样的操作都以大体上相同的方式执行,与所存储数据的类型无关。

System.Collections —— 非泛型集合类
System.Collections. Generic —— 泛型集合类

泛型集合
与非泛型集合相比,使用泛型集合有许多优点,如当集合元素为值类型时,则泛型集合类型的性能会优于对应的非泛型集合类型;并优于从非泛型集合派生出来的类型,为提高性能并获得类型安全,通常情况下建议使用泛型集合。
System.Collections.Generic这个命名空间,包含多个可用的泛型集合类和关联接口,与非泛型集合类相比,这些类和接口更为高效和类型安全。

通过泛型可以定义类型安全类,而不会损害类型安全、性能或工作效率。只须一次性将服务器实现为一般服务器,同时可以用任何类型来声明和使用它。需要使用<>来将一般类型参数括起来。如:

 public class GenericList<T> {

        public void test(T param) {
             MessageBox.Show(param.ToString());
    
        }
}

这就是一个泛型类型。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/149258.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 无锁队列实现原理_优先队列 java

    无锁队列实现原理_优先队列 java首次接触无锁数据结构的设计,请各位大佬多多指教~~~CAS(Compare&&Swap)原子操作CAS是无锁(lockfree)的数据结构的基础。用伪代码描述:input:reg,old_val,new_val/*是old_val,reg替换为new_val,返回为true;否则返回为false*/if(*reg==old_val){*reg==new…

    2022年10月21日
  • java jersey 参数_Java Jersey使用總結

    java jersey 参数_Java Jersey使用總結关于作者马隆博(LenboMa),Java,JavascriptE-Mail:mlongboatgmail.com创建于:2013/07/26转载请注明出处:前言在短信平台一期工作中,为便于移动平台的开发,使用了JavaJersey框架开发RESTFul风格的WebService接口。在使用的过程中发现了一些问题并积累了一些经验。因此,做下总结备忘,同时也希望对有需要的同仁有好的借鉴和帮…

  • Android SDK下载配置教程

    Android SDK下载配置教程https://blog.csdn.net/naipeng/article/details/72722682/ 下面详细介绍。第一步、安装JDKAndroid开发工具要求必须安装JDK(JavaDevelopmentKit),不能只安装JRE(Java RuntimeEdition),在安装Android开发工具之前需要先安装JavaJDK。尤其是Eclipse的开发过程必须要…

  • leetcode 颜色分类_leetcode难度

    leetcode 颜色分类_leetcode难度给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。示例 1:输入:nums = [2,0,2,1,1,0]输出:[0,0,1,1,2,2]示例 2:输入:nums = [2,0,1]输出:[0,1,2]示例 3:输入:nums = [0]输出:[0]示例 4:输入:nums = [1]输出:[1] 提示:n == num

  • HikariPool配置详解

    HikariPool配置详解HikariPool较佳配置 hikari: connection-timeout:60000 validation-timeout:3000 idle-timeout:60000 login-timeout:5 max-lifetime:60000 maximum-pool-size:10 minimum-idle:10 read-only:falsehikari各参数解释https://github.com/.

  • es6模板字符串_模板字符串如何实现

    es6模板字符串_模板字符串如何实现<spanclass=”fr”>${(function(){if(list[item].oStatus==0){return`待交易`;}elseif(list[item].oStatus==1){return’已交易’;}else{return’已过期’;}

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号