我有一个string[]
,想要获取string[]
的元素,其中包含{{1}指定的索引,我知道存在 }。
int[]
从此,我想获得一个string[] stringArray = { "a", "b", "c", "d", "e", "f", "g" };
int[] indices = { 1, 2, 4, 6 };
包含string[]
。优选使用λ表达。我该怎么做?
答案 0 :(得分:10)
你能做到的一种方法就是这样。
string[] result = indices.Select(i => stringArray[i]).ToArray()
答案 1 :(得分:6)
indices.Select(i => stringArray[i]);
答案 2 :(得分:3)
stringArray.Where((x,index) => indices.Contains(index));
答案 3 :(得分:1)
foreach( int i in indices){
string s = stringArray[i]
//DO stuff
}
答案 4 :(得分:1)
LINQ: var result = from indice in indices select stringArray[indice]
LAMBDA EXPRESSION: var result = indices.Select(i => stringArray[i])
答案 5 :(得分:1)
这样的事情:
var result= (
from str in stringArray.Select ((a,i) =>new {a,i})
where indices.Contains(str.i)
select str
);