lstArray是一个字符串数组列表:
List<string[]> lstArray = new List<string[]>();
显然它的大小不一。在下面的示例中,它有两个元素;第一个有4个,第二个有5个项目。 最后一项始终引用表名(tblPerson,tblCompany等)。这就是我想要收集的内容。 有时可能是第4,第5或第8项。我将有另一个字符串列表,其中填充了这些表名。
lstArray [0]:
lstArray 1:
答案 0 :(得分:8)
如果它始终是最后一个元素,您可以使用:
var lastElements = lstArray.Select(e => e.Last());
如果某些数组的元素为零,您也可以使用:
var lastElements = lstArray.Select(e => e.LastOrDefault());
在这种情况下,您最终可能会收到一些null
条目。避免这种情况的另一种方法可能是:
var lastElements = lstArray.Select(e => e.Count == 0 ? string.Empty : e.Last());
对于空数组,这将为您提供string.Empty
而不是null
,这对于使用代码而言更不容易出错。
答案 1 :(得分:2)
以下内容将返回lstArray
上的最后一个元素:
var lastElement = lstArray.Last();
然而你想要的是lstArray
中包含的字符串数组的所有最后元素的集合,你可以这样获得:
var lastElements = lstArray.Select(i => i.Last())
答案 2 :(得分:1)
你的意思是这样的吗?:
List<string[]> lstArray = new List<string[]>();
var result = lstArray.Select(a=>a.Last())
答案 3 :(得分:1)
var lastElement = lstArray.Last().Last() //this will give the last element of last array
var lastElement = lstArray.Select(sublist => sublist.Last()); //this will give last element of each array in the list
答案 4 :(得分:0)
获取列表最后一项
int len = strList.length();
String strArr[] = strList.get(len);
获取String Array最后一个元素,即最后一个字符串
String str = strArr[strArr.size()-1]