zoukankan      html  css  js  c++  java
  • C#泛型

    using System.Collections;
    using System.Collections.Generic;
    using static System.Console;
    
    //泛型 主要优点是性能 与c++模板相似 但c++在使用时需要其源代码
    //而.NET泛型可在一种语言中定义,在任何其他.NET语言中使用
    
    namespace lwm
    {
        class Program
        {
            static void Main()
            {
                //装箱 拆箱 性能损失大
                var list = new ArrayList();
                list.Add(44);//可添加任意类型
    
                int i1 = (int)list[0];
    
                //泛型 类型安全
                var list1 = new List<int>();
                list1.Add(44);
                i1 = list1[0];
                foreach (int i in list1)
                    WriteLine(i);
    
                LinkedListNode<int> list2 = new LinkedListNode<int>();
    
    
               ReadKey();
    
            }
            //自定义泛型类
            public class LinkedListNode<T>
                where T: struct//约束条件,可以没有
                //struct T必须是值类型 class 必须是引用类型
                //IFoo:必须实现接口IFoo 
                //Foo:必须派生自Foo 
                //new():T必须有一个默认构造函数 
                //T2:T必须派生自泛型T2
            {
                public LinkedListNode()
                {//default 将null赋予引用类型,将0赋予值类型
                    Value = default(T);
                }
                public LinkedListNode(T value)
                {
                    Value = value;
                }
    
                public T Value { get; private set; }
                public LinkedListNode<T> Next { get; internal set; }
                public LinkedListNode<T> Prev { get; internal set; }
            }
            //自定义泛型结构
            public struct st<T> { }
    
            //泛型方法
            void fun1<T>()
            {
    
            }
            //泛型成员方法
            public class MyClass
            {
                public void fun<T>()
                {
                    
                }
            }
        }
    
    }
  • 相关阅读:
    设计模式——模板方法模式
    设计模式——适配器模式
    设计模式——策略模式
    设计模式——工厂模式
    设计模式——代理模式
    设计模式——单例模式
    设计模式——总纲
    Hadoop的safeMode
    MapReduce中Combiner规约的作用以及不能作为MR标配的原因
    hdfs shell
  • 原文地址:https://www.cnblogs.com/xslwm/p/9856506.html
Copyright © 2011-2022 走看看