List与ArrayList的区别

小磊哥哥啊 2009-02-28 03:01:07
List<T>添加/读取无须拆箱、装箱 ArrayList添加/读取则须拆箱、装箱
能举个例子吗
...全文
187 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2009-03-01
  • 打赏
  • 举报
回复
ArrayList 中间会有一个多的转换步骤...
waizqfor 2009-03-01
  • 打赏
  • 举报
回复
[Quote=引用楼主 biyelei 的帖子:]
List <T>添加/读取无须拆箱、装箱 ArrayList添加/读取则须拆箱、装箱
能举个例子吗
[/Quote]
http://www.cnblogs.com/JimmyZhang/archive/2007/08/22/865245.htmlLZ看看这文章的介绍
  • 打赏
  • 举报
回复
这个该到C#版吧
  • 打赏
  • 举报
回复
list是接口,而ArrayList实现了List接口的类。
添加到 ArrayList 中的任何引用或值类型都将隐式地向上强制转换为 Object。如果项是值类型,则必须在将其添加到列表中时进行装箱操作,在检索时进行取消装箱操作。强制转换以及装箱和取消装箱操作都会降低性能;
相关的可以看看这篇文章:
http://www.soidc.net/articles/1213781277395/20080721/1215945385388_1.html
List不能赋值给List 换句话说,List<String>与List<Object>由于类型擦除,在编译后会映射到相同的List类型上,也就是运行时实际无法区分二者,不过在取用时,编译器会进行类型还原,从而变为原来的List<String>与List

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧