关于LIST LIST ArrayList 的疑问

d_r_johnny 2011-10-28 09:12:21
今天学习泛型的时候 遇到点问题 不是很明白

讲到ArrayList 集合的时候 说其在取值的时候 可能出现类型转换的错误
所以采用泛型才解决 书上说 用LIST<T> 来代替ArrayList Dictionary<k,v> 代替Hashmap

list<T> 对象名 = new list<T>();

这里就不是很明白了 学JAVA的时候说过 LIST<E> 是接口 而ARRAYLIST 和 LINKEDLIST 是2个实现类

这里为什么能实例化呢?

LIST <T > 和 LIST<E >是什么关系

而且 ARRAYLIST 本身就是一个泛型类 为什么不用 ARRAYLIST<T> xx =new ARRAYLIST<T>();呢?
...全文
119 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Quote=引用楼主 d_r_johnny 的回复:]
ARRAYLIST 本身就是一个泛型类
[/Quote]

和HashTable一样都是装箱后的集合
泛型集合都是强类型的,性能更好
IList和IList<T>才是接口,前面的大写I
zh6335901 2011-10-28
  • 打赏
  • 举报
回复
ArrayList的是C#1.0的时候就有的,而到了C#2.0的时候才有了泛型
threenewbee 2011-10-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 d_r_johnny 的回复:]
您好 那我想问下 LIST 在C#中 是接口么? 哪能看c#里面 类的描述信息啊
[/Quote]
不是。
IList<T> 是接口。

你可以去 http://msdn.microsoft.com 查看 .NET 库的文档。
d_r_johnny 2011-10-28
  • 打赏
  • 举报
回复
您好 那我想问下 LIST 在C#中 是接口么? 哪能看c#里面 类的描述信息啊
threenewbee 2011-10-28
  • 打赏
  • 举报
回复
C#没有。Java的话,你应该去Java板问。
d_r_johnny 2011-10-28
  • 打赏
  • 举报
回复
我知道JAVA里有 C#里 没有么?
threenewbee 2011-10-28
  • 打赏
  • 举报
回复
C#中有ArrayList<T>么?
List不能赋值给List 2.List<T>属于泛型。(也算是多态的一种) Java的泛型实现是基于类型擦除的。换句话说,List<String>与List<Object>由于类型擦除,在编译后会映射到相同的List类型上,也就是运行时实际无法区分二者,不过在取用时,...

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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