泛型_Tag标签_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
当前位置:程序员俱乐部 >>Tag标签 >> 泛型 >>列表
· 泛型委托使用发布时间:2016-05-23
泛型委托基础classProgramclassProgram{//泛型委托,与普通委托类似,不同之处只在于使用泛型委托要指定泛型参数publicdelegateTMyGenericDelegate<T>(Tobj1,Tobj2);intAddInt(intx,inty){returnx+y;}stringAddString(strings1,strings2){returns1+s2;}staticvoidMain(string[]args){Programp=newProgram... 查看全文
· C# 泛型发布时间:2016-05-12
C#泛型1.定义泛型类在类定义中包含尖括号语法,即可创建泛型类:1classMyGenericClass<T>2{3//Addcode4}其中T可以遵循C#命名规则的任意字符。T可以看作是成员变量的类型、属性或者方法的返回类型以及方法的参数类型等。例如:1classMyGenericClass<T>2{3privateTobj;4publicMyGenericClass(Titem)5{6obj=item;7}8publicTObj9{10get{returnobj;... 查看全文
现象:lib模块中写了一个泛型接口,在混淆之后泛型消失,提示“Error:(67,79)错误:类型*******不带有参数”解决:混淆时把泛型给混淆掉了,在proguard-rules.pro中添加-keepattributesSignature... 查看全文
· Java泛型笔记发布时间:2015-05-10
泛型的本质:参数类型的应用。将所操作的数据类型定义为一个参数,并在应用的时候指定类型。1.为什么使用泛型在JDK1.5之前,泛型程序设计是通过继承来实现的,例如:Listlist=newArrayList();//当加入或取出元素时,都被当成Object类型来看待list.add(newInteger(10));list.add("10");那么,在取出元素时候,要知道取出元素的类型,并进行强制转换Integera=(Integer)list.get(0)... 查看全文
同事遇到一个问题:在做手机app接口时,返回JSON格式,json里面的数据属性均是string类型,但不能出现NULL(手机端那边说处理很麻烦,哎)。Model已经创建好了,而且model的每个属性均是string类型。数据层使用EF。数据库也有些字段可为空。这时,需要大量的验证属性是否为NULL,并将属性值为NULL的转换成"".解决方案:1遍历model各个属性,当为NULL时,赋值"".2.支持泛型List<model>的嵌套。前提条件:model的值只有这几种... 查看全文
· 泛型方法测试发布时间:2015-05-07
packagegeneric;/***泛型方法测试**@authorcaiyu**/publicclassGenMethod{publicstatic<T>voiddisplay(Tt){System.out.println(t.getClass());}}... 查看全文
JeffreyZhao真是神一样的存在,伊太结棍了(上海话),每次看他的博客得使劲使劲使劲地啃。本篇源于JefferyZhao的"逆泛型执行器"这篇文章。该文提到了为以下的接口写一个泛型方法:publicinterfaceIRecord{stringGetString(stringfield);intGetInt(stringfield);longGetLong(stringfield);}先来实现该接口:publicclassMyRecord:IRecord... 查看全文
我们经常通过泛型构造函数创建泛型实例,也常调用实例的扩展方法。以下的代码在项目中随处可见:staticvoidMain(string[]args){varstrs=newList<string>{"hello","world"};varresult=strs.Where(s=>s.StartsWith("h"));foreach(variteminresult){Console.WriteLine(item);}Console.ReadKey();}以上... 查看全文
[泛型的概念](1)没有泛型的时候,所有的对象都是以object为基础,如果要使用时必须进行强制类型转换,如果对于值类型,则会导致不断拆箱装箱的过程,对系统消耗很大。(2)使用泛型时不需要通过object类进行装箱拆箱,使用的时候都会是确定的类型。(3)泛型的概念一开始是由集合引入,因为集合中的类型都是基于object类。可以在集合中使用泛型类。(4)泛型不仅仅用于集合,还可以用于委托、接口和方法。泛型的优点:高性能ArrayListlist1=newArrayList();list1.Add... 查看全文
Dictionary是一个键值类型的集合。它有点像数组,但Dictionary的键可以是任何类型,内部使用HashTable存储键和值。本篇自定义一个类型安全的泛型Dictionary<TKey,TValue>,并且可以被序列化。为了使自定义的泛型Dictionary<TKey,TValue>可以被序列化成xml,需要实现泛型IXmlSerializable接口。publicclassMySerializableDictionary<TKey,TValue>... 查看全文
· 为什么说泛型是类型安全的发布时间:2015-04-04
通常说泛型,比如List<T>是类型安全的,为什么这么说呢?先来看一个类型不安全的例子。classProgram{staticvoidMain(string[]args){vartempArr=newArrayList();tempArr.Add(1);tempArr.Add("2");foreach(varitemintempArr){inttempInt=(int)item;Console.WriteLine(tempInt);}Console.ReadKey();}... 查看全文
最近在调代码,发现一个很诡异的问题,简单复原一下创建4.0控制台项目以下代码1classProgram2{34staticvoidMain(string[]args)5{6varitem=new{Id="a7b97947-2ddb-4454-8bad-c0a95e0431aa"};7varclient=newSqlClient();8vardata=client.QueryByPage("aaaa",1,3,item);910}11}12publicclassSqlClient13... 查看全文
· 8、泛型发布时间:2015-03-25
首先陈述,这是一篇水文,因为文字内容比较干,主要是一些介绍和概念。但对泛型理解还是有一定的帮助。没有过多的代码解释,勿怪。引入:.net2.0发布之后,C#编程语言开始支持泛型,用以增强它的特性,基于此,在基础类库中引入了一个以集合为中心的新命名空间:System.Collections.Generic命名空间。第一个问题:为什么要引入泛型。其实也就是和数组之间的区别之处。1、之前提到过C#的数组,数组这种数据结构可以提供一组固定上限的同一类型项。但有很多时候,我们却需要更灵活的数据结构,例如... 查看全文
很久没有写博客了,一些读者也经常问问一些问题,不过最近我确实也很忙,除了处理日常工作外,平常主要的时间也花在了继续研究微软的实体框架(EntityFramework)方面了。这个实体框架加入了很多特性(例如LINQ等),目前也已经应用的比较成熟了,之所以一直没有整理成一个符合自己开发模式的实体框架,是因为这个框架和原来我的基于EnterpriseLibrary的模式还是有很大的不同,不过实体框架推出来也很久了,目前也去到了EntityFramework6了,听说7也快出来了... 查看全文
本文内容自定义类Array.Sort参考资料System.Array.Sort有很多对集合的操作,比如排序,查找,克隆等等,你可以利用这个类加深对IComparer、IComparable以及泛型委托、匿名方法、Lambda表达式的理解。下载Demo自定义类自定义两个类:Person和PersonComparer。后面会用到这两个类。自定义Person类Person类有两个属性:FirstName和LastName,重构了ToString方法。该类还继承IComparable接口... 查看全文
· C#泛型基础发布时间:2015-01-30
泛型是C#2.0中新加入的特性,它增强了性能,使代码更富有表现力,提供了更好的通用化方案,在早期的C#版本中通用化是通过类型与通用基类型Object之间进行强制转换来实现的,泛型针对这种限制提供了解决方案,而且更它将大量的安全检查从执行时转移到了编译时进行.C#中可以创建自己的泛型接口,泛型类,泛型方法,泛型事件和泛型委托,但不存在泛型的属性,索引器,操作符,构造函数和析构器。类型参数的约束约束说明T:Struct类型参数必须是值类型。可以指定除Nullable以外的任何值类型。有关更多信息... 查看全文
· VS 2012 泛型约束发布时间:2015-01-30
本文内容使用泛型约束的原因未绑定的类型参数作为约束的类型参数参考资料当“设计模式”出现时,人们提“用接口编程”;后来,有了泛型,人们提“用泛型编程”。什么泛型?比如,单链表LinkedList场景,每个节点包含两个字段:值和下一个节点的引用,其中,“值”既可以是int,也可以是string,为每个数据类型都写一个类,显然太麻烦,此时就可以使用泛型LinkedList<T>;再如,排序算法中很常见Swap函数,交换两个值的位置,既可以是int,也可以是string,用泛型也很合适... 查看全文
自己在写文章的同时,也是在学习,对于书中的语句很多其实没有太好的理解,读一本书,要消化!!!三章都是讲泛型的,最后写一下泛型的限制,对于本章学习的完结,oneend,onebegin.看下面的代码1publicclassTeacher2{3publicenumFlag{Chinese,English};4publicstringName{get;set;}5}67publicclassChineseTeacher:Teacher8{9Flagf=Flag.Chinese;10... 查看全文
· Entity Framework泛型封装发布时间:2014-12-28
EntityFramework本身的增删改查其实已经很方便了,不过做项目的时候用的多了也就觉得有点累了,每个业务实体基本上都涉及到到了增删改查这四个基本的要素,至于封装每个公司可能都不一样,接口,设计模式都用的眼花缭乱,我闲来没事就搞个简单的封装Helper,Github上也有关于EF的扩展Libray,具体没有用过,公司的有自己的封装,自己也没怎么弄,具体地址:https://github.com/loresoft/EntityFramework.Extended.首先来看段代码... 查看全文
· 泛型中协变和逆变发布时间:2014-12-26
写在前面今天讲的内容有点多,但是差不多都能听懂,稍微有点模糊的就是协变和逆变的概念,下面是我结合在网上看的资料整合而成的。正文msdn上的原话:协变:是指能够使用比原始指定的派生类型的派生程度更小(不太确定)的类型逆变:是指能够使用比原始类型的派生类型的派生程度更大(更具体)的类型在方便理解的概念是:协变:子类向父类转化,用于返回类型用out关键字逆变:父类向子类转化的过程,用于方法参数类型用in关键字协变的例子:1publicclassPerson{}23publicclassStudent... 查看全文