【C#学习笔记】第十二章总结

《C#入门经典第七期》第十二章泛型书后总结

使用泛型类型

泛型类型需要一个或多个类型参数才能工作。声明变量时需要传递类型参数,应把逗号分隔的类型名列表放在尖括号中

可空类型

可空类型可使用指定值类型的任意值或null值。使用Nullable<T>或T?语法,可以声明可空类型的变量

??运算符

空接合运算符返回第一个操作数的值,如果第一个操作数是null,就返回第二个操作数的值

泛型集合

泛型集合内置了强类型化功能。可使用List<T>、Collection<T>和Dictionary<K,V>等集合类型,它们还提供了泛型接口。针对泛型集合进行排序和搜索,可以使用IComparer<T>和IComparable<T>接口

泛型类型的参数约束

在使用类型时约束可以提供的类型。可以根据基类、所支持的接口、是否必须是值类型或引用类型以及是否支持无参数的构造函数等,来约束类型参数。如果没有约束就必须使用default关键字来实例化泛型类型的变量

变体

变体是类似于多态性的一个概念,但应用于类型参数。它运行使用一个泛型类型替代另一个泛型类型,这些泛型类型仅在所使用的泛型类型参数上有所区别。协变允许在两种类型之间转换,其中目标类型有一个类型参数,是源类型的类型参数的基类。抗变允许进行相反的转换。协变类型参数用out参数定义,只能用作返回类型属性get访问器的类型。抗变类型参数用in参数定义,只能用作方法的参数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值