黑马程序员技术交流社区

标题: 泛型和数组那个更高效一些 [打印本页]

作者: 乔红超    时间: 2013-5-16 22:56
标题: 泛型和数组那个更高效一些
本帖最后由 乔红超 于 2013-5-24 17:37 编辑

泛型和数组那个更高效一些?
作者: 萌小子    时间: 2013-5-16 23:03
泛型和数组这两个没有可比性,都不是一样的技术。泛型是在参数不确定的情况下使用的,而数组是存储数据的。
作者: 淡蓝色    时间: 2013-5-16 23:28
泛型集合:如:list<int> 和int[] 的区别就是,数组定义了之后就确定了数组的长度,并且分配了这么多长度的空间,而泛型集合并没有分配长度,只有在你增加了元素之后才会增加长度,所以,对于确定了长度的,可以考虑数组,对于无法确定长度的可以考虑泛型集合
如果元素的类型不确定的话可以使用ArrayList集合
作者: 盘晟    时间: 2013-5-18 00:54
数组没有泛型的貌似,只有集合有泛型的:List<T>和Dictionary<K,V>。ArrayList还是数组没错,他和上两个泛型集合的区别在于,他属于弱类型集合而泛型集合属于强类型集合,懂的人可能已经知道我的意思了,就是ArrayList中存放的类型都是Object的,虽然方便,但也可能造成隐患,比如存入存取一个不同类型的值就会发生类型错误,而泛型集合是在定义时就确定类型的,List<这里定义你期望存入的类型>,这样就限制了List存取的类型,极大的避免的出错的可能性。这也是强类型集合的优势,从你新建一个类的命名空间来看,微软已经默认帮你引入了System.Collection.Generic,这说明微软也是希望我们多多使用泛型集合的。发言完毕,有遗漏错误请高手们指正,谢谢!祝楼主成功




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2