按id获取列表项
本文关键字:列表 获取 id | 更新日期: 2023-09-27 18:02:54
我有一个列表:
List<string> theList = new List<string>;
清单中有几个要素。现在我想通过索引得到一个项目。例如,我想得到元素编号4。我该怎么做?
只需使用索引器
string item = theList[3];
请注意,C#中的索引是基于0的。因此,如果你想要列表中的第四个元素,你需要使用索引3。如果你想要第五个元素,你可以使用索引4。从你的问题中还不清楚你想要
索引器是.Net集合类型上的一个常见功能。对于列表,它通常是基于索引的,对于映射,它是基于键的。有问题的类型的文档将告诉您哪种类型以及是否可用。索引器成员将作为名为Item
的属性列出
http://msdn.microsoft.com/en-us/library/0ebtbkkc.aspx
要获得第4项,可以使用索引器:
string item = theList[3];
如果您喜欢使用方法,则可以使用ElementAt
或(ElementAtOrDefault
(:
string item = theList.ElementAt(3);
您可以使用Indexer
在选定的index
中获取项目
string item = theList[3];
使用索引器:
string the4th = theList[3];
请注意,如果列表只有3项或更少,则会引发异常,因为索引总是从零开始的。您可能想要使用Enumerable.ElementAtOrDefault
,然后:
string the4th = theList.ElementAtOrDefault(3);
if(the4th != null)
{
// ...
}
如果index < list.Count
,则ElementAtOrDefault
返回指定索引处的元素,如果index >= theList.Count
,则返回default(T)
。因此,对于引用类型(如String
(,它返回null
,而对于值类型,它返回其默认值(例如,int
为0(。
对于实现IList<T>
(数组或列表(的集合类型,它使用索引器来获取元素,而对于其他类型,它则使用foreach
循环和计数器变量。
因此,您还可以使用Count
属性来检查列表中是否包含足够的索引项:
string the4th = null;
if(index < theList.Count)
{
the4th = theList[index];
}
使用索引器语法:
var fourthItem = theList[3];
应该这样做,通过数组索引进行访问。
theList[3]
它的3作为索引从0开始。
您可以使用Indexer获取所选索引处的Item
string item = theList[3];
或者,如果你想获得id(如果从数据库访问(,定义一个类,例如
public class Person
{
public int PId;
public string PName;
}
并按以下进行访问
List<Person> theList = new List<Person>();
Person p1 = new Person();
int id = theList[3].PId