求助:C# 中接口list的理解 list<>

hyynet09 2009-01-07 10:48:34
我不是很理解C#语法中关于接口的使用
例如有list<class>是什么意思呢?
应该是接口返回类型是class,但是我还是不清楚,对于list的理解帮我分析一下,刚刚查了些没发现我想要的答案。谢谢
...全文
414 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaogao001 2010-12-22
  • 打赏
  • 举报
回复
List是一个数据集合
对月成双 2009-01-08
  • 打赏
  • 举报
回复
举个例子:

public List<string> GetNameList() //得到姓名列表
{
List<string> nameList = new List<string>() ; //先new一个string型的List
string sql="......";

//省略...Connection...Command 命令等操作

SQLDataReader dr = command.ExecuteQuery(); //查询数据库
while(dr.Read())
{
string name = ....; // 接收字符串name

nameList.add(name); // List 添加元素
}
return nameList ;
}

这里是返回一个string型数组,你也可以根据自己的要求 new List< Object >,返回一个对象列表
lc328 2009-01-08
  • 打赏
  • 举报
回复
http://hi.baidu.com/sinitian/blog/item/dc49651991b2c079dab4bda3.html
ljm10 2009-01-08
  • 打赏
  • 举报
回复
List<T> T为占位符,表示List<T>集合所有内容为T类型,为的是减少类型转换。
如List<string> listStr = new List<string>(),集合listStr中所有元素为string,所以不用转换,直接用listStr[0]表示字符串。
而ArrayList al = new ArrayList(),集合al里面的元素全部为object,要通过装箱object o=a;拆箱(string)(o)才能使用,所以效率较差。
much0726 2009-01-07
  • 打赏
  • 举报
回复
要用例子来理解,MARK
siecj 2009-01-07
  • 打赏
  • 举报
回复
这是泛型,不是接口吧。。。
大头_衍 2009-01-07
  • 打赏
  • 举报
回复
我一般是通过
List<实体类>获得数据列表
  • 打赏
  • 举报
回复
List可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法
在决定使用 List 还是使用 ArrayList 类(两者具有类似的功能)时,记住 List 类在大多数情况下执行得更好并且是类型安全的。如果对 List 类的类型 T 使用引用类型,则两个类的行为是完全相同的。但是,如果对类型 T 使用值类型,则需要考虑实现和装箱问题。

如果对类型 T 使用值类型,则编译器将特别针对该值类型生成 List 类的实现。这意味着不必对 List 对象的列表元素进行装箱就可以使用该元素
元素之后,不对列表元素装箱所节省的内存将大于生成该类实现所使用的内存。

  • 打赏
  • 举报
回复
list 是接口,怎么来的?

你去msdn查了吗


list <T>这是泛型集合类


List <Object> 就相当于 System.Collections命名空间里面的List


请问System.Collections中有List吗?

System.Collections.Generic中才有List
lunat 2009-01-07
  • 打赏
  • 举报
回复
List<T> 是一个泛型链表...T表示节点元素类型
比如
List<int> intList;表示一个元素为int的链表
intList.Add(34); //添加
intList.Remove(34);//删除
intList.RemoveAt(0); //删除位于某处的元素
intList.Count; //链表长度
还有Insert,Find,FindAll,Contains等方法,也有索引方法 intList[0] = 23;
1.减少了装箱拆箱
2.便于编译时检查数据类型

List<Object> 就相当于 System.Collections命名空间里面的List

111,130

社区成员

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

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

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