这可能是一个非常简单的问题,我想访问最后一个元素:
List<string>[] list = new List<string>[3];
所以每个列表里面都有3个元素但是我应该如何访问这些列表的最后一个?
答案 0 :(得分:19)
您可以使用Enumerable.Last():
string lastElement = list.Last().Last();
第一个调用将返回最后一个List<string>
,第二个调用将返回该列表中的最后一个字符串。
或者,由于你知道数组的长度,你可以直接访问列表,并执行:
string lastElement = list[2].Last();
如果您事先知道您总是会有3个包含3个元素的列表,您可能需要考虑使用多维数组:
string[,] matrix = new string[3,3];
// fill it in..
string last = matrix[2,2];
答案 1 :(得分:6)
如果您有[[1,2,3],[4,5,6],[7,8,9]]
并且想要9
,请使用list.Last().Last()
。如果您需要[3,6,9]
,请使用list.Select(sublist => sublist.Last())
。
答案 2 :(得分:0)
在C# 8.0中,您可以使用“ hat”运算符(^
)从列表末尾选择一个元素。
来自最终运算符
^
的索引,该索引指定索引为 相对于序列的结尾。
// get last item from last array
string last = list[^1][^1];