欢迎各位兄弟 发布技术文章
这里的技术是共享的
class Node<T>{public T Value { get; set; }public Node<T> Left { get; set; }public Node<T> Right { get; set; }public Node(T value, Node<T> left, Node<T> right){Value = value;Left = left;Right = right;}public Node(T value) : this(value, null, null) { }}
来自 https://bbs.csdn.net/topics/320109333
这个是范型的用法。你查一下范型的定义及使用就可以。范型可节省很多代码,用起来也很方便。
这个叫做泛型,你可以理解为把类当做一个参数去传递。
详细情况见https://msdn.microsoft.com/zh-cn/library/512aeb7t(VS.80).aspx
泛型
[/Quote]
UP
占位符,泛型
[/Quote]en
public class List<T> : IList<T>, ICollection<T>,
IEnumerable<T>, IList, ICollection, IEnumerable
这上面的是它的语法!!
表示可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法。
T表示List列表中元素的类型!
List<(Of <(T>)>) 类是 ArrayList 类的泛型等效类。该类使用大小可按需动态增加的数组实现 IList<(Of <(T>)>) 泛型接口。
http://msdn.microsoft.com/zh-cn/library/512aeb7t(VS.80).aspx
数组应该能理解吧,类型被定义死了的
你所展示的代码所定义的是一个泛型类
简单做个解释吧
ArrayList list=new ArrayList();是什么类型的值都可以往list里放的
而ArrayList<UserInfo> userlist=new ArrayList()<UserInfo>;则规定了当前userlist只允许存放UserInfo类的对象,其他对象是不能往里放的
用泛型可以规定集合的类型,避免不必要的装箱拆箱,减少CPU性能损耗