Pergunta

Tenho uma pergunta sobre como fazer uma tarefa de programação comum no LINQ.

Digamos que façamos diferentes coleções ou matrizes. O que eu gostaria de fazer é combinar elementos entre as matrizes e, se houver uma correspondência, faça algo com esse elemento.

por exemplo:

        string[] collection1 = new string[] { "1", "7", "4" };
        string[] collection2 = new string[] { "6", "1", "7" };

        foreach (string str1 in collection1)
        {
            foreach (string str2 in collection2)
            {
                if (str1 == str2)
                {
                    // DO SOMETHING EXCITING///
                }
            }
        }

Obviamente, isso pode ser realizado usando o código acima, mas o que estou me perguntando se existe uma maneira rápida e interessante que você pode fazer isso com o LinqtoObjects?

Obrigado!

Foi útil?

Solução

apenas um palpite, mas talvez tente chamar de parada () antes de ligar para destruir ().

Outras dicas

Se você deseja executar o código arbitrário nas correspondências, essa seria uma maneira Linq-Y de fazê-lo.

var query = 
   from str1 in collection1 
   join str2 in collection2 on str1 equals str2
   select str1;

foreach (var item in query)
{
     // do something fun
     Console.WriteLine(item);
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top