public myclass<T>
泛型类中的<T>是表示如果是泛型必须用T还是可以用别的字符或类型,如int,假如是int,是啥意思?如果是指定了具体类型int,那还叫泛型干吗?顺便请解释一下下面这个结构:
 public static List<T> Deserialize(string fileName, string ruleName){}

解决方案 »

  1.   

    不必是T的,可以用其他字符代替,当然不能是特殊的标识符,比如INT.
    上面的方法,也不太懂。菜鸟回答。
      

  2.   


    举例来说,List<T>提供给你int,string,double等多种数据类型的List,而不需要为每一种数据类型定义一次List类。在你的例子中,如果类是使用int来初始化T的话,则Deserialize返回的是List<int>,同理用string的话就是List<string>,这在对不同数据类型进行类似处理时可以大幅提升开发效率。
      

  3.   

    随便什么字符都可以,只要不是标识符,当然也必须符合变量命名规则解释的话看英文好像是反序列化文件成List<T>
      

  4.   

    可以把int 改成object 那就更像了。
      那你同一个List 元素有的是int有的是string 有的是long 有的是decimal...当然,List 的元素的可以 是一个List 那就可以有标记性的装载了  下面我封装一下:
    你自己 可以拆了:
      List<object> l = new List<object>();
    object[] node1 = new object[2]{ "int", 10 };
    object[] node2 = new object[2] {"string", "今天天气太好了" };
    l.Add(node1);
    l.Add(node2);
      

  5.   

    用这个方式,可以对付xml 格式的数据!
      

  6.   

    这样说吧,如果没有泛型,你就需要写IntList,StringList,DoubleList,UserList
    泛型提供了一种编译前代码复用的一种手段。
      

  7.   

    没有具体的限制,除了语言的保留字,空间名,或者API类名,都可以
      

  8.   

    (1)不能使用具体类型,否则就不是泛型了。你可以这么用:
    class IntegerList : List<int> { } // 从泛型类继承。
    class MyList<T> where T : SomeType { } // T 必须是 SomeType 或它的子类。(2)public static List<T> Deserialize(string fileName, string ruleName){}
    从名字上看,是根据规则、文件名做反序列化,得到一个 List 列表。