是否可以从列表或没有括号的数组中返回值?
例如我有整数列表:
List<int> myIntegers = new List<int>();
myIntegers.Add(1);
myIntegers.Add(2);
myIntegers.Add(3);
int newValue = myIntegers; //normally i should use myIntegers[0]
我希望myIntegers从列表中返回第一个值,但我想在没有括号的情况下使用它。有办法吗?
感谢。 M.
答案 0 :(得分:1)
正如你所写,它永远不会编译。但是,如果你真的对[]
有反对意见,那么是的。您可以使用First()
(或其随附广告FirstOrDefault()
)或仅ElementAt(0)
。
First
和FirstOrDefault
可以使用谓词,这通常很有用,FirstOrDefault
如果没有与谓词匹配的第一个元素,则返回default(T)
,{{1与ElementAt
完全相同。
答案 1 :(得分:1)
如果您继承List<T>
,则可以使用implicit conversion到T
执行此操作。虽然,你所描述的是一种奇怪的数据结构,而不是真正惯用的c#。可能最好不要将其称为列表。