c#泛型作为返回类型的写法

摘要:
没有技术内容,就忽略你已经知道的内容。

 没有技术含量,已经知道的就直接无视了吧。
我的本意是要将一个实体参数转换为泛型对象T返回,所以初次代码就写成下面这样:

c#泛型作为返回类型的写法第1张c#泛型作为返回类型的写法第2张代码
        public static T GetObj<T>(Employee model)
        {
            T result 
= default(T);
            
if (model is T)
            {
                result 
= (T)model; //或者  result = model as T;
            }
            
return result;
        }

 可是,编译器提示无法将类型转换为T,之前竟然没碰到过这个问题。查了一下资料,原来,要这么写:

c#泛型作为返回类型的写法第3张c#泛型作为返回类型的写法第4张代码
 public class GenericTest
    {
        
//public static T GetObj<T>(Employee model)
        
//{
        
//    T result = default(T);
        
//    if (model is T)
        
//    {
        
//        result = (T)model; //或者  result = model as T;
        
//    }
        
//    return result;
        
//}

        
public static T GetObj<T>(Employee model)
        {
            T result 
= default(T);
            
if (model is T)
            {
                result 
= (T)(object)model; //或 (T)((object)model);
            }
            
return result;
        }
    }

 天杀的ms。

 

免责声明:文章转载自《c#泛型作为返回类型的写法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇段寄存器和8种地址寻址方式WHAT EXACTLY IS WASM ?!下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

如何正确使用Java泛型

前言 Java 1.5之前是没有泛型的,以前从集合中读取每个对象都必须先进行转换,如果不小心存入集合中对象类型是错的,运行过程中转换处理会报错。有了泛型之后编译器会自动帮助转换,使程序更加安全,但是要正确使用泛型才能取得事半功倍的效果。 本文主要从不要使用原生类型,泛型方法,限制通配符,类型安全的异构容器四个部分来说明如何正确使用Java泛型。主要参考资...

XStream xml 解析框架使用笔记

1. xml的标签可以映射为类、类成员变量 2. 有子标签的标签映射为类,没有子标签的便签映射为类成员变量 3. 类名、类成员变量名如与标签名不一致需要通过注解或代码设置别名 1 //类名 2 @XStreamAlias("Info") 3 xStream.aliasType("Info", YLTextInfo.class); 4 //类成员变量名 5...

C#2.0泛型-Dictionary,List的用法

泛型最常见的用途是创建集合类。 .NETFramework类库在System.Collections.Generic命名空间中包含几个新的泛型集合类。应尽可能地使用这些类来代替普通的类,如System.Collections命名空间中的ArrayList,HashTable等。 下面我们就来说下,几个泛型集合类的用法: 一.Dictionary 此类在.N...

说说C#中IList与List区别

我知道IList是一个接口,而List可以实例化IList。请问,我不可以不定义接口IList么?或者在IDAL(接口中)定义List吗?必须是Ilist么??请大家谈谈他们之间的区别和作用? (摘自网络)   首先IList 泛型接口是 ICollection 泛型接口的子代,并且是所有泛型列表的基接口。 它仅仅是所有泛型类型的接口,并没有太多方...

C#泛型接口

使用泛型可以定义接口,在接口中定义的方法可以带泛型参数。----------《C#高级编程(第7版)》清华大学出版社 namespace Test { class Program { static void Main(string[] args) { TestClass testCla...

java 增强for循环与泛型

一 增强for循环   增强for循环是JDK1.5以后出来的一个高级for循环,专门用来遍历数组和集合的。它的内部 原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。 格式: for(元素的数据类型 变量 : Collection集合or数组){ }   它用于遍历Collection和数组。通常只进行遍历元素,不要...